PHP 8.2.30
Preview: overlay.py Size: 783 B
/opt/hc_python/lib/python3.12/site-packages/zipp/compat/overlay.py

"""
Expose zipp.Path as .zipfile.Path.

Includes everything else in ``zipfile`` to match future usage. Just
use:

>>> from zipp.compat.overlay import zipfile

in place of ``import zipfile``.

Relative imports are supported too.

>>> from zipp.compat.overlay.zipfile import ZipInfo

The ``zipfile`` object added to ``sys.modules`` needs to be
hashable (#126).

>>> _ = hash(sys.modules['zipp.compat.overlay.zipfile'])
"""

import importlib
import sys
import types

import zipp


class HashableNamespace(types.SimpleNamespace):
    def __hash__(self):
        return hash(tuple(vars(self)))


zipfile = HashableNamespace(**vars(importlib.import_module('zipfile')))
zipfile.Path = zipp.Path
zipfile._path = zipp

sys.modules[__name__ + '.zipfile'] = zipfile  # type: ignore[assignment]

Directory Contents

Dirs: 1 × Files: 3

Name Size Perms Modified Actions
- drwxr-xr-x 2025-04-04 08:01:57
Edit Download
783 B lrw-r--r-- 2025-04-04 08:01:57
Edit Download
256 B lrw-r--r-- 2025-04-04 08:01:57
Edit Download
0 B lrw-r--r-- 2025-04-04 08:01:57
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).