contrib/fuzz/dirs_corpus.py
author Simon Sapin <simon.sapin@octobus.net>
Thu, 08 Jul 2021 12:18:21 +0200
changeset 47674 ff97e793ed36
parent 43844 b7af8a02a304
child 48875 6000f5b25c9b
permissions -rw-r--r--
dirstate-v2: Introduce a docket file .hg/dirstate now only contains some metadata to point to a separate data file named .hg/dirstate.{}.d with a random hexadecimal identifier. For now every update creates a new data file and removes the old one, but later we’ll (usually) append to an existing file. Separating into two files allows doing the "write to a temporary file then atomically rename into destination" dance with only a small docket file, without always rewriting a lot of data. Differential Revision: https://phab.mercurial-scm.org/D11088

from __future__ import absolute_import, print_function

import argparse
import zipfile

ap = argparse.ArgumentParser()
ap.add_argument("out", metavar="some.zip", type=str, nargs=1)
args = ap.parse_args()

with zipfile.ZipFile(args.out[0], "w", zipfile.ZIP_STORED) as zf:
    zf.writestr(
        "greek-tree",
        "\n".join(
            [
                "iota",
                "A/mu",
                "A/B/lambda",
                "A/B/E/alpha",
                "A/B/E/beta",
                "A/D/gamma",
                "A/D/G/pi",
                "A/D/G/rho",
                "A/D/G/tau",
                "A/D/H/chi",
                "A/D/H/omega",
                "A/D/H/psi",
            ]
        ),
    )