Skip to content

nightly-cef180ea-ls341

Pre-release
Pre-release

Choose a tag to compare

@LinuxServer-CI LinuxServer-CI released this 05 Sep 10:04
· 14 commits to nightly since this release
f458599

CI Report:

https://ci-tests.linuxserver.io/linuxserver/beets/nightly-cef180ea-ls341/index.html

LinuxServer Changes:

Full Changelog: nightly-63b69fa9-ls340...nightly-cef180ea-ls341

Remote Changes:

importer: fix tar and 7z archive import (#6696)

  • Fixes #5664. Both tar and 7z archive imports were broken because
    ArchiveImportTask.extract calls archive.infolist(), but neither
    tarfile.TarFile (lost ZipFileCompat in Python 3) nor
    py7zr.SevenZipFile (exposes list() instead) provides it. Both
    surfaces produced '… object has no attribute 'infolist' and aborted
    the import.
  • Adds thin module-level wrappers — TarArchive (subclass of
    tarfile.TarFile) and SevenZipArchive (composition over
    py7zr.SevenZipFile, since py7zr is optional) — that expose a
    ZipFile-compatible infolist(). Tiny _TarMemberInfo /
    _SevenZipMemberInfo adapters carry only the two attributes the extract
    loop reads: filename and date_time.
  • Fixes a latent bug in the test suite: ImportTarTest.create_archive
    and Import7zTest's inheritance were dead code. The parent
    test_import_zip called the module-level create_archive(self) helper,
    which only knows how to build zips, so both tar and 7z tests were
    silently exercising the zip path. Routing through
    self.create_archive() makes them real regression tests for this bug.

This supersedes #5666; design follows @wisp3rwind's review feedback
there (module-level wrappers, minimal adapters, shared test
infrastructure via self.create_archive).