PyCatFile 0.24.0__tar.gz → 0.24.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: PyCatFile
3
- Version: 0.24.0
3
+ Version: 0.24.2
4
4
  Summary: A tar like file format name archivefile.
5
5
  Home-page: https://github.com/GameMaker2k/PyCatFile
6
6
  Download-URL: https://github.com/GameMaker2k/PyCatFile/archive/master.tar.gz
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: PyCatFile
3
- Version: 0.24.0
3
+ Version: 0.24.2
4
4
  Summary: A tar like file format name archivefile.
5
5
  Home-page: https://github.com/GameMaker2k/PyCatFile
6
6
  Download-URL: https://github.com/GameMaker2k/PyCatFile/archive/master.tar.gz
@@ -14,7 +14,7 @@
14
14
  Copyright 2018-2024 Game Maker 2k - http://intdb.sourceforge.net/
15
15
  Copyright 2018-2024 Kazuki Przyborowski - https://github.com/KazukiPrzyborowski
16
16
 
17
- $FileInfo: catfile.py - Last Update: 10/29/2025 Ver. 0.24.0 RC 1 - Author: cooldude2k $
17
+ $FileInfo: catfile.py - Last Update: 10/31/2025 Ver. 0.24.2 RC 1 - Author: cooldude2k $
18
18
  '''
19
19
 
20
20
  from __future__ import absolute_import, division, print_function, unicode_literals, generators, with_statement, nested_scopes
@@ -14,7 +14,7 @@
14
14
  Copyright 2018-2024 Game Maker 2k - http://intdb.sourceforge.net/
15
15
  Copyright 2018-2024 Kazuki Przyborowski - https://github.com/KazukiPrzyborowski
16
16
 
17
- $FileInfo: pycatfile.py - Last Update: 10/29/2025 Ver. 0.24.0 RC 1 - Author: cooldude2k $
17
+ $FileInfo: pycatfile.py - Last Update: 10/31/2025 Ver. 0.24.2 RC 1 - Author: cooldude2k $
18
18
  '''
19
19
 
20
20
  from __future__ import absolute_import, division, print_function, unicode_literals, generators, with_statement, nested_scopes
@@ -630,12 +630,12 @@ __file_format_extension__ = __file_format_multi_dict__[__file_format_default__][
630
630
  __file_format_dict__ = __file_format_multi_dict__[__file_format_default__]
631
631
  __project__ = __program_name__
632
632
  __project_url__ = "https://github.com/GameMaker2k/PyCatFile"
633
- __version_info__ = (0, 24, 0, "RC 1", 1)
634
- __version_date_info__ = (2025, 10, 29, "RC 1", 1)
633
+ __version_info__ = (0, 24, 2, "RC 1", 1)
634
+ __version_date_info__ = (2025, 10, 31, "RC 1", 1)
635
635
  __version_date__ = str(__version_date_info__[0]) + "." + str(
636
636
  __version_date_info__[1]).zfill(2) + "." + str(__version_date_info__[2]).zfill(2)
637
637
  __revision__ = __version_info__[3]
638
- __revision_id__ = "$Id: 2d517f1e21531989c8966a647b9efe9569847101 $"
638
+ __revision_id__ = "$Id: a457db17e60184130c861d8d0790717b035aa222 $"
639
639
  if(__version_info__[4] is not None):
640
640
  __version_date_plusrc__ = __version_date__ + \
641
641
  "-" + str(__version_date_info__[4])
@@ -6471,7 +6471,7 @@ def AppendFileHeaderWithContent(fp, filevalues=[], extradata=[], jsondata={}, fi
6471
6471
  return fp
6472
6472
 
6473
6473
 
6474
- def AppendFilesWithContent(infiles, fp, dirlistfromtxt=False, filevalues=[], extradata=[], jsondata={}, compression="auto", compresswholefile=True, compressionlevel=None, compressionuselist=compressionlistalt, followlink=False, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_dict__, verbose=False):
6474
+ def AppendFilesWithContent(infiles, fp, dirlistfromtxt=False, extradata=[], jsondata={}, compression="auto", compresswholefile=True, compressionlevel=None, compressionuselist=compressionlistalt, followlink=False, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_dict__, verbose=False):
6475
6475
  if(not hasattr(fp, "write")):
6476
6476
  return False
6477
6477
  advancedlist = formatspecs['use_advanced_list']
@@ -6521,6 +6521,16 @@ def AppendFilesWithContent(infiles, fp, dirlistfromtxt=False, filevalues=[], ext
6521
6521
  numfiles = int(len(GetDirList))
6522
6522
  fnumfiles = format(numfiles, 'x').lower()
6523
6523
  AppendFileHeader(fp, numfiles, "UTF-8", [], checksumtype[0], formatspecs)
6524
+ try:
6525
+ fp.flush()
6526
+ if(hasattr(os, "sync")):
6527
+ os.fsync(fp.fileno())
6528
+ except io.UnsupportedOperation:
6529
+ pass
6530
+ except AttributeError:
6531
+ pass
6532
+ except OSError:
6533
+ pass
6524
6534
  FullSizeFilesAlt = 0
6525
6535
  for curfname in GetDirList:
6526
6536
  fencoding = "UTF-8"
@@ -6772,6 +6782,16 @@ def AppendFilesWithContent(infiles, fp, dirlistfromtxt=False, filevalues=[], ext
6772
6782
  fcsize, fuid, funame, fgid, fgname, fcurfid, fcurinode, flinkcount, fdev, fdev_minor, fdev_major, "+"+str(len(formatspecs['format_delimiter']))]
6773
6783
  AppendFileHeaderWithContent(
6774
6784
  fp, tmpoutlist, extradata, jsondata, fcontents.read(), [checksumtype[1], checksumtype[2], checksumtype[3]], formatspecs)
6785
+ try:
6786
+ fp.flush()
6787
+ if(hasattr(os, "sync")):
6788
+ os.fsync(fp.fileno())
6789
+ except io.UnsupportedOperation:
6790
+ pass
6791
+ except AttributeError:
6792
+ pass
6793
+ except OSError:
6794
+ pass
6775
6795
  return fp
6776
6796
 
6777
6797
  def AppendFilesWithContentFromTarFile(infile, fp, extradata=[], jsondata={}, compression="auto", compresswholefile=True, compressionlevel=None, compressionuselist=compressionlistalt, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_dict__, verbose=False):
@@ -6780,8 +6800,6 @@ def AppendFilesWithContentFromTarFile(infile, fp, extradata=[], jsondata={}, com
6780
6800
  if(verbose):
6781
6801
  logging.basicConfig(format="%(message)s",
6782
6802
  stream=sys.stdout, level=logging.DEBUG)
6783
- formver = formatspecs['format_ver']
6784
- fileheaderver = str(int(formver.replace(".", "")))
6785
6803
  curinode = 0
6786
6804
  curfid = 0
6787
6805
  inodelist = []
@@ -6849,6 +6867,16 @@ def AppendFilesWithContentFromTarFile(infile, fp, extradata=[], jsondata={}, com
6849
6867
  return False
6850
6868
  numfiles = int(len(tarfp.getmembers()))
6851
6869
  AppendFileHeader(fp, numfiles, "UTF-8", [], checksumtype[0], formatspecs)
6870
+ try:
6871
+ fp.flush()
6872
+ if(hasattr(os, "sync")):
6873
+ os.fsync(fp.fileno())
6874
+ except io.UnsupportedOperation:
6875
+ pass
6876
+ except AttributeError:
6877
+ pass
6878
+ except OSError:
6879
+ pass
6852
6880
  for member in sorted(tarfp.getmembers(), key=lambda x: x.name):
6853
6881
  fencoding = "UTF-8"
6854
6882
  if(re.findall("^[.|/]", member.name)):
@@ -6987,6 +7015,16 @@ def AppendFilesWithContentFromTarFile(infile, fp, extradata=[], jsondata={}, com
6987
7015
  fcsize, fuid, funame, fgid, fgname, fcurfid, fcurinode, flinkcount, fdev, fdev_minor, fdev_major, "+"+str(len(formatspecs['format_delimiter']))]
6988
7016
  AppendFileHeaderWithContent(
6989
7017
  fp, tmpoutlist, extradata, jsondata, fcontents.read(), [checksumtype[1], checksumtype[2], checksumtype[3]], formatspecs)
7018
+ try:
7019
+ fp.flush()
7020
+ if(hasattr(os, "sync")):
7021
+ os.fsync(fp.fileno())
7022
+ except io.UnsupportedOperation:
7023
+ pass
7024
+ except AttributeError:
7025
+ pass
7026
+ except OSError:
7027
+ pass
6990
7028
  fcontents.close()
6991
7029
  return fp
6992
7030
 
@@ -6996,8 +7034,6 @@ def AppendFilesWithContentFromZipFile(infile, fp, extradata=[], jsondata={}, com
6996
7034
  if(verbose):
6997
7035
  logging.basicConfig(format="%(message)s",
6998
7036
  stream=sys.stdout, level=logging.DEBUG)
6999
- formver = formatspecs['format_ver']
7000
- fileheaderver = str(int(formver.replace(".", "")))
7001
7037
  curinode = 0
7002
7038
  curfid = 0
7003
7039
  inodelist = []
@@ -7035,6 +7071,16 @@ def AppendFilesWithContentFromZipFile(infile, fp, extradata=[], jsondata={}, com
7035
7071
  VerbosePrintOut("Bad file found!")
7036
7072
  numfiles = int(len(zipfp.infolist()))
7037
7073
  AppendFileHeader(fp, numfiles, "UTF-8", [], checksumtype[0], formatspecs)
7074
+ try:
7075
+ fp.flush()
7076
+ if(hasattr(os, "sync")):
7077
+ os.fsync(fp.fileno())
7078
+ except io.UnsupportedOperation:
7079
+ pass
7080
+ except AttributeError:
7081
+ pass
7082
+ except OSError:
7083
+ pass
7038
7084
  for member in sorted(zipfp.infolist(), key=lambda x: x.filename):
7039
7085
  fencoding = "UTF-8"
7040
7086
  if(re.findall("^[.|/]", member.filename)):
@@ -7197,6 +7243,16 @@ def AppendFilesWithContentFromZipFile(infile, fp, extradata=[], jsondata={}, com
7197
7243
  fcsize, fuid, funame, fgid, fgname, fcurfid, fcurinode, flinkcount, fdev, fdev_minor, fdev_major, "+"+str(len(formatspecs['format_delimiter']))]
7198
7244
  AppendFileHeaderWithContent(
7199
7245
  fp, tmpoutlist, extradata, jsondata, fcontents.read(), [checksumtype[1], checksumtype[2], checksumtype[3]], formatspecs)
7246
+ try:
7247
+ fp.flush()
7248
+ if(hasattr(os, "sync")):
7249
+ os.fsync(fp.fileno())
7250
+ except io.UnsupportedOperation:
7251
+ pass
7252
+ except AttributeError:
7253
+ pass
7254
+ except OSError:
7255
+ pass
7200
7256
  fcontents.close()
7201
7257
  return fp
7202
7258
 
@@ -7211,8 +7267,6 @@ if(rarfile_support):
7211
7267
  if(verbose):
7212
7268
  logging.basicConfig(format="%(message)s",
7213
7269
  stream=sys.stdout, level=logging.DEBUG)
7214
- formver = formatspecs['format_ver']
7215
- fileheaderver = str(int(formver.replace(".", "")))
7216
7270
  curinode = 0
7217
7271
  curfid = 0
7218
7272
  inodelist = []
@@ -7229,6 +7283,16 @@ if(rarfile_support):
7229
7283
  VerbosePrintOut("Bad file found!")
7230
7284
  numfiles = int(len(rarfp.infolist()))
7231
7285
  AppendFileHeader(fp, numfiles, "UTF-8", [], checksumtype[0], formatspecs)
7286
+ try:
7287
+ fp.flush()
7288
+ if(hasattr(os, "sync")):
7289
+ os.fsync(fp.fileno())
7290
+ except io.UnsupportedOperation:
7291
+ pass
7292
+ except AttributeError:
7293
+ pass
7294
+ except OSError:
7295
+ pass
7232
7296
  try:
7233
7297
  fp.flush()
7234
7298
  if(hasattr(os, "sync")):
@@ -7433,6 +7497,16 @@ if(rarfile_support):
7433
7497
  fcsize, fuid, funame, fgid, fgname, fcurfid, fcurinode, flinkcount, fdev, fdev_minor, fdev_major, "+"+str(len(formatspecs['format_delimiter']))]
7434
7498
  AppendFileHeaderWithContent(
7435
7499
  fp, tmpoutlist, extradata, jsondata, fcontents.read(), [checksumtype[1], checksumtype[2], checksumtype[3]], formatspecs)
7500
+ try:
7501
+ fp.flush()
7502
+ if(hasattr(os, "sync")):
7503
+ os.fsync(fp.fileno())
7504
+ except io.UnsupportedOperation:
7505
+ pass
7506
+ except AttributeError:
7507
+ pass
7508
+ except OSError:
7509
+ pass
7436
7510
  fcontents.close()
7437
7511
  return fp
7438
7512
 
@@ -7465,6 +7539,16 @@ if(py7zr_support):
7465
7539
  VerbosePrintOut("Bad file found!")
7466
7540
  numfiles = int(len(szpfp.list()))
7467
7541
  AppendFileHeader(fp, numfiles, "UTF-8", [], checksumtype[0], formatspecs)
7542
+ try:
7543
+ fp.flush()
7544
+ if(hasattr(os, "sync")):
7545
+ os.fsync(fp.fileno())
7546
+ except io.UnsupportedOperation:
7547
+ pass
7548
+ except AttributeError:
7549
+ pass
7550
+ except OSError:
7551
+ pass
7468
7552
  for member in sorted(szpfp.list(), key=lambda x: x.filename):
7469
7553
  fencoding = "UTF-8"
7470
7554
  if(re.findall("^[.|/]", member.filename)):
@@ -7603,10 +7687,20 @@ if(py7zr_support):
7603
7687
  fcsize, fuid, funame, fgid, fgname, fcurfid, fcurinode, flinkcount, fdev, fdev_minor, fdev_major, "+"+str(len(formatspecs['format_delimiter']))]
7604
7688
  AppendFileHeaderWithContent(
7605
7689
  fp, tmpoutlist, extradata, jsondata, fcontents.read(), [checksumtype[1], checksumtype[2], checksumtype[3]], formatspecs)
7690
+ try:
7691
+ fp.flush()
7692
+ if(hasattr(os, "sync")):
7693
+ os.fsync(fp.fileno())
7694
+ except io.UnsupportedOperation:
7695
+ pass
7696
+ except AttributeError:
7697
+ pass
7698
+ except OSError:
7699
+ pass
7606
7700
  fcontents.close()
7607
7701
  return fp
7608
7702
 
7609
- def AppendListsWithContent(inlist, fp, dirlistfromtxt=False, filevalues=[], extradata=[], jsondata={}, compression="auto", compresswholefile=True, compressionlevel=None, followlink=False, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_dict__, verbose=False):
7703
+ def AppendListsWithContent(inlist, fp, dirlistfromtxt=False, extradata=[], jsondata={}, compression="auto", compresswholefile=True, compressionlevel=None, followlink=False, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_dict__, verbose=False):
7610
7704
  if(not hasattr(fp, "write")):
7611
7705
  return False
7612
7706
  if(verbose):
@@ -7668,12 +7762,12 @@ def AppendListsWithContent(inlist, fp, dirlistfromtxt=False, filevalues=[], extr
7668
7762
  return fp
7669
7763
 
7670
7764
 
7671
- def AppendInFileWithContent(infile, fp, dirlistfromtxt=False, filevalues=[], extradata=[], jsondata={}, followlink=False, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_dict__, verbose=False):
7765
+ def AppendInFileWithContent(infile, fp, dirlistfromtxt=False, extradata=[], jsondata={}, followlink=False, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_dict__, verbose=False):
7672
7766
  inlist = ReadInFileWithContentToList(infile, "auto", 0, 0, False, False, True, False, formatspecs)
7673
- return AppendListsWithContent(inlist, fp, dirlistfromtxt, filevalues, extradata, jsondata, followlink, checksumtype, formatspecs, verbose)
7767
+ return AppendListsWithContent(inlist, fp, dirlistfromtxt, extradata, jsondata, followlink, checksumtype, formatspecs, verbose)
7674
7768
 
7675
7769
 
7676
- def AppendFilesWithContentToOutFile(infiles, outfile, dirlistfromtxt=False, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, compressionuselist=compressionlistalt, filevalues=[], extradata=[], jsondata={}, followlink=False, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_multi_dict__, verbose=False, returnfp=False):
7770
+ def AppendFilesWithContentToOutFile(infiles, outfile, dirlistfromtxt=False, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, compressionuselist=compressionlistalt, extradata=[], jsondata={}, followlink=False, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_multi_dict__, verbose=False, returnfp=False):
7677
7771
  if(IsNestedDict(formatspecs) and fmttype=="auto" and
7678
7772
  (outfile != "-" and outfile is not None and not hasattr(outfile, "read") and not hasattr(outfile, "write"))):
7679
7773
  get_in_ext = os.path.splitext(outfile)
@@ -7717,7 +7811,7 @@ def AppendFilesWithContentToOutFile(infiles, outfile, dirlistfromtxt=False, fmtt
7717
7811
  fp = CompressOpenFile(outfile, compresswholefile, compressionlevel)
7718
7812
  except PermissionError:
7719
7813
  return False
7720
- AppendFilesWithContent(infiles, fp, dirlistfromtxt, filevalues, extradata, jsondata, compression,
7814
+ AppendFilesWithContent(infiles, fp, dirlistfromtxt, extradata, jsondata, compression,
7721
7815
  compresswholefile, compressionlevel, compressionuselist, followlink, checksumtype, formatspecs, verbose)
7722
7816
  if(outfile == "-" or outfile is None or hasattr(outfile, "read") or hasattr(outfile, "write")):
7723
7817
  fp = CompressOpenFileAlt(
@@ -7754,12 +7848,12 @@ def AppendFilesWithContentToOutFile(infiles, outfile, dirlistfromtxt=False, fmtt
7754
7848
  fp.close()
7755
7849
  return True
7756
7850
 
7757
- def AppendFilesWithContentToStackedOutFile(infiles, outfile, dirlistfromtxt=False, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, compressionuselist=compressionlistalt, filevalues=[], extradata=[], jsondata={}, followlink=False, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_multi_dict__, verbose=False, returnfp=False):
7851
+ def AppendFilesWithContentToStackedOutFile(infiles, outfile, dirlistfromtxt=False, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, compressionuselist=compressionlistalt, extradata=[], jsondata={}, followlink=False, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_multi_dict__, verbose=False, returnfp=False):
7758
7852
  if not isinstance(infiles, list):
7759
7853
  infiles = [infiles]
7760
7854
  returnout = False
7761
7855
  for infileslist in infiles:
7762
- returnout = AppendFilesWithContentToOutFile(infileslist, outfile, dirlistfromtxt, fmttype, compression, compresswholefile, compressionlevel, compressionuselist, filevalues, extradata, jsondata, followlink, checksumtype, formatspecs, verbose, True)
7856
+ returnout = AppendFilesWithContentToOutFile(infileslist, outfile, dirlistfromtxt, fmttype, compression, compresswholefile, compressionlevel, compressionuselist, extradata, jsondata, followlink, checksumtype, formatspecs, verbose, True)
7763
7857
  if(not returnout):
7764
7858
  break
7765
7859
  else:
@@ -7769,7 +7863,7 @@ def AppendFilesWithContentToStackedOutFile(infiles, outfile, dirlistfromtxt=Fals
7769
7863
  return True
7770
7864
  return returnout
7771
7865
 
7772
- def AppendListsWithContentToOutFile(inlist, outfile, dirlistfromtxt=False, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, filevalues=[], extradata=[], jsondata={}, followlink=False, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_dict__, verbose=False, returnfp=False):
7866
+ def AppendListsWithContentToOutFile(inlist, outfile, dirlistfromtxt=False, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, extradata=[], jsondata={}, followlink=False, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_dict__, verbose=False, returnfp=False):
7773
7867
  if(IsNestedDict(formatspecs) and fmttype=="auto" and
7774
7868
  (outfile != "-" and outfile is not None and not hasattr(outfile, "read") and not hasattr(outfile, "write"))):
7775
7869
  get_in_ext = os.path.splitext(outfile)
@@ -7810,7 +7904,7 @@ def AppendListsWithContentToOutFile(inlist, outfile, dirlistfromtxt=False, fmtty
7810
7904
  fp = CompressOpenFile(outfile, compresswholefile, compressionlevel)
7811
7905
  except PermissionError:
7812
7906
  return False
7813
- AppendListsWithContent(inlist, fp, dirlistfromtxt, filevalues, extradata, jsondata, compression,
7907
+ AppendListsWithContent(inlist, fp, dirlistfromtxt, extradata, jsondata, compression,
7814
7908
  compresswholefile, compressionlevel, followlink, checksumtype, formatspecs, verbose)
7815
7909
  if(outfile == "-" or outfile is None or hasattr(outfile, "read") or hasattr(outfile, "write")):
7816
7910
  fp = CompressOpenFileAlt(
@@ -7928,6 +8022,21 @@ def AppendFilesWithContentFromTarFileToOutFile(infiles, outfile, fmttype="auto",
7928
8022
  fp.close()
7929
8023
  return True
7930
8024
 
8025
+ def AppendFilesWithContentFromTarFileToStackedOutFile(infiles, outfile, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, compressionuselist=compressionlistalt, extradata=[], jsondata={}, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_multi_dict__, verbose=False, returnfp=False):
8026
+ if not isinstance(infiles, list):
8027
+ infiles = [infiles]
8028
+ returnout = False
8029
+ for infileslist in infiles:
8030
+ returnout = AppendFilesWithContentFromTarFileToOutFile(infileslist, outfile, fmttype, compression, compresswholefile, compressionlevel, compressionuselist, extradata, jsondata, checksumtype, formatspecs, verbose, True)
8031
+ if(not returnout):
8032
+ break
8033
+ else:
8034
+ outfile = returnout
8035
+ if(not returnfp and returnout):
8036
+ returnout.close()
8037
+ return True
8038
+ return returnout
8039
+
7931
8040
  def AppendFilesWithContentFromZipFileToOutFile(infiles, outfile, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, compressionuselist=compressionlistalt, extradata=[], jsondata={}, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_multi_dict__, verbose=False, returnfp=False):
7932
8041
  if(IsNestedDict(formatspecs) and fmttype=="auto" and
7933
8042
  (outfile != "-" and outfile is not None and not hasattr(outfile, "read") and not hasattr(outfile, "write"))):
@@ -8008,6 +8117,21 @@ def AppendFilesWithContentFromZipFileToOutFile(infiles, outfile, fmttype="auto",
8008
8117
  fp.close()
8009
8118
  return True
8010
8119
 
8120
+ def AppendFilesWithContentFromZipFileToStackedOutFile(infiles, outfile, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, compressionuselist=compressionlistalt, extradata=[], jsondata={}, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_multi_dict__, verbose=False, returnfp=False):
8121
+ if not isinstance(infiles, list):
8122
+ infiles = [infiles]
8123
+ returnout = False
8124
+ for infileslist in infiles:
8125
+ returnout = AppendFilesWithContentFromZipFileToOutFile(infileslist, outfile, fmttype, compression, compresswholefile, compressionlevel, compressionuselist, extradata, jsondata, checksumtype, formatspecs, verbose, True)
8126
+ if(not returnout):
8127
+ break
8128
+ else:
8129
+ outfile = returnout
8130
+ if(not returnfp and returnout):
8131
+ returnout.close()
8132
+ return True
8133
+ return returnout
8134
+
8011
8135
  if(not rarfile_support):
8012
8136
  def AppendFilesWithContentFromRarFileToOutFile(infiles, outfile, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, compressionuselist=compressionlistalt, extradata=[], jsondata={}, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_multi_dict__, verbose=False, returnfp=False):
8013
8137
  return False
@@ -8093,6 +8217,21 @@ if(rarfile_support):
8093
8217
  fp.close()
8094
8218
  return True
8095
8219
 
8220
+ def AppendFilesWithContentFromRarFileToStackedOutFile(infiles, outfile, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, compressionuselist=compressionlistalt, extradata=[], jsondata={}, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_multi_dict__, verbose=False, returnfp=False):
8221
+ if not isinstance(infiles, list):
8222
+ infiles = [infiles]
8223
+ returnout = False
8224
+ for infileslist in infiles:
8225
+ returnout = AppendFilesWithContentFromRarFileToOutFile(infileslist, outfile, fmttype, compression, compresswholefile, compressionlevel, compressionuselist, extradata, jsondata, checksumtype, formatspecs, verbose, True)
8226
+ if(not returnout):
8227
+ break
8228
+ else:
8229
+ outfile = returnout
8230
+ if(not returnfp and returnout):
8231
+ returnout.close()
8232
+ return True
8233
+ return returnout
8234
+
8096
8235
  if(not py7zr_support):
8097
8236
  def AppendFilesWithContentFromSevenZipToOutFile(infiles, outfile, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, compressionuselist=compressionlistalt, extradata=[], jsondata={}, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_multi_dict__, verbose=False, returnfp=False):
8098
8237
  return False
@@ -8178,9 +8317,24 @@ if(py7zr_support):
8178
8317
  fp.close()
8179
8318
  return True
8180
8319
 
8181
- def AppendInFileWithContentToOutFile(infile, outfile, dirlistfromtxt=False, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, filevalues=[], extradata=[], jsondata={}, followlink=False, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_dict__, verbose=False, returnfp=False):
8320
+ def AppendFilesWithContentFromSevenZipToStackedOutFile(infiles, outfile, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, compressionuselist=compressionlistalt, extradata=[], jsondata={}, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_multi_dict__, verbose=False, returnfp=False):
8321
+ if not isinstance(infiles, list):
8322
+ infiles = [infiles]
8323
+ returnout = False
8324
+ for infileslist in infiles:
8325
+ returnout = AppendFilesWithContentFromSevenZipToOutFile(infileslist, outfile, fmttype, compression, compresswholefile, compressionlevel, compressionuselist, extradata, jsondata, checksumtype, formatspecs, verbose, True)
8326
+ if(not returnout):
8327
+ break
8328
+ else:
8329
+ outfile = returnout
8330
+ if(not returnfp and returnout):
8331
+ returnout.close()
8332
+ return True
8333
+ return returnout
8334
+
8335
+ def AppendInFileWithContentToOutFile(infile, outfile, dirlistfromtxt=False, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, extradata=[], jsondata={}, followlink=False, checksumtype=["crc32", "crc32", "crc32", "crc32"], formatspecs=__file_format_dict__, verbose=False, returnfp=False):
8182
8336
  inlist = ReadInFileWithContentToList(infile, "auto", 0, 0, False, False, True, False, formatspecs)
8183
- return AppendListsWithContentToOutFile(inlist, outfile, dirlistfromtxt, fmttype, compression, compresswholefile, compressionlevel, filevalues, extradata, jsondata, followlink, checksumtype, formatspecs, verbose, returnfp)
8337
+ return AppendListsWithContentToOutFile(inlist, outfile, dirlistfromtxt, fmttype, compression, compresswholefile, compressionlevel, extradata, jsondata, followlink, checksumtype, formatspecs, verbose, returnfp)
8184
8338
 
8185
8339
 
8186
8340
  def PrintPermissionString(fchmode, ftype):
@@ -9956,10 +10110,10 @@ def CheckSumSupportAlt(checkfor, guaranteed=True):
9956
10110
 
9957
10111
 
9958
10112
  def PackCatFile(infiles, outfile, dirlistfromtxt=False, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, compressionuselist=compressionlistalt, followlink=False, checksumtype=["crc32", "crc32", "crc32", "crc32"], extradata=[], jsondata={}, formatspecs=__file_format_multi_dict__, verbose=False, returnfp=False):
9959
- return AppendFilesWithContentToOutFile(infiles, outfile, dirlistfromtxt, fmttype, compression, compresswholefile, compressionlevel, compressionuselist, [], extradata, jsondata, followlink, checksumtype, formatspecs, verbose, returnfp)
10113
+ return AppendFilesWithContentToOutFile(infiles, outfile, dirlistfromtxt, fmttype, compression, compresswholefile, compressionlevel, compressionuselist, extradata, jsondata, followlink, checksumtype, formatspecs, verbose, returnfp)
9960
10114
 
9961
10115
  def PackStackedCatFile(infiles, outfile, dirlistfromtxt=False, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, compressionuselist=compressionlistalt, followlink=False, checksumtype=["crc32", "crc32", "crc32", "crc32"], extradata=[], jsondata={}, formatspecs=__file_format_multi_dict__, verbose=False, returnfp=False):
9962
- return AppendFilesWithContentToStackedOutFile(infiles, outfile, dirlistfromtxt, fmttype, compression, compresswholefile, compressionlevel, compressionuselist, [], extradata, jsondata, followlink, checksumtype, formatspecs, verbose, returnfp)
10116
+ return AppendFilesWithContentToStackedOutFile(infiles, outfile, dirlistfromtxt, fmttype, compression, compresswholefile, compressionlevel, compressionuselist, extradata, jsondata, followlink, checksumtype, formatspecs, verbose, returnfp)
9963
10117
 
9964
10118
  def PackCatFileFromDirList(infiles, outfile, dirlistfromtxt=False, fmttype="auto", compression="auto", compresswholefile=True, compressionlevel=None, compressionuselist=compressionlistalt, followlink=False, checksumtype=["crc32", "crc32", "crc32"], extradata=[], formatspecs=__file_format_dict__, verbose=False, returnfp=False):
9965
10119
  return PackCatFile(infiles, outfile, dirlistfromtxt, fmttype, compression, compresswholefile, compressionlevel, compressionuselist, followlink, checksumtype, extradata, formatspecs, verbose, returnfp)
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "PyCatFile"
3
- version = "0.24.0"
3
+ version = "0.24.2"
4
4
  readme = "README.md"
5
5
  license = { text = "BSD-3-Clause" }
6
6
  keywords = []
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes