omdev 0.0.0.dev533__tar.gz → 0.0.0.dev534__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.
- {omdev-0.0.0.dev533/omdev.egg-info → omdev-0.0.0.dev534}/PKG-INFO +2 -2
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dataclasses/_dumping.py +5 -5
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/cli.py +43 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/manifests/_dumping.py +5 -5
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/pyproject/pkg.py +47 -12
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/scripts/ci.py +5 -5
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/scripts/interp.py +5 -5
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/scripts/lib/formats/goyaml.py +5 -5
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/scripts/lib/inject.py +5 -5
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/scripts/lib/marshal.py +5 -5
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/scripts/pyproject.py +51 -18
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534/omdev.egg-info}/PKG-INFO +2 -2
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev.egg-info/SOURCES.txt +1 -9
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev.egg-info/requires.txt +1 -1
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/pyproject.toml +19 -15
- omdev-0.0.0.dev533/omdev/dockerdev/resources/.pkgdata +0 -2
- omdev-0.0.0.dev533/omdev/dockerdev/resources/configs/.pkgdata +0 -2
- omdev-0.0.0.dev533/omdev/tools/pawk/__init__.py +0 -0
- omdev-0.0.0.dev533/omdev/tui/__init__.py +0 -0
- omdev-0.0.0.dev533/omdev/tui/apps/__init__.py +0 -0
- omdev-0.0.0.dev533/omdev/tui/apps/edit/__init__.py +0 -0
- omdev-0.0.0.dev533/omdev/tui/apps/irc/__init__.py +0 -0
- omdev-0.0.0.dev533/omdev/tui/apps/markdown/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/LICENSE +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/MANIFEST.in +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/README.md +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/.omlish-manifests.json +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/README.md +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/__about__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/amalg/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/amalg/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/amalg/cli/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/amalg/cli/main.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/amalg/gen/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/amalg/gen/gen.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/amalg/gen/imports.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/amalg/gen/manifests.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/amalg/gen/resources.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/amalg/gen/srcfiles.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/amalg/gen/strip.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/amalg/gen/types.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/amalg/gen/typing.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/amalg/info.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/amalg/sources.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cache/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cache/compute/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cache/compute/cache.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cache/compute/contexts.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cache/compute/currents.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cache/compute/fns.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cache/compute/resolvers.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cache/compute/storage.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cache/compute/types.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cache/data/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cache/data/actions.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cache/data/cache.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cache/data/consts.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cache/data/defaults.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cache/data/manifests.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cache/data/specs.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/capi/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/capi/darwin/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/capi/darwin/aps.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/capi/darwin/ax.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/capi/darwin/cf.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/capi/darwin/cg.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/capi/linux/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/capi/linux/x11.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cc/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cc/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cc/cdeps.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cc/cdeps.toml +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cc/cli.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cc/srclangs.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/_boilerplate.cc +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/_distutils/LICENSE +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/_distutils/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/_distutils/build_ext.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/_distutils/compilers/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/_distutils/compilers/ccompiler.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/_distutils/compilers/options.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/_distutils/compilers/unixccompiler.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/_distutils/dir_util.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/_distutils/errors.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/_distutils/extension.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/_distutils/file_util.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/_distutils/modified.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/_distutils/spawn.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/_distutils/sysconfig.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/_distutils/util.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/_distutils/version.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/build.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/cmake.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/importhook.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/magic.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cexts/scan.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/cache.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/ci.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/cli.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/compose.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/consts.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/docker/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/docker/buildcaching.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/docker/cache.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/docker/cacheserved/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/docker/cacheserved/cache.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/docker/cacheserved/manifests.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/docker/cmds.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/docker/dataserver.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/docker/imagepulling.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/docker/inject.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/docker/packing.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/docker/repositories.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/docker/utils.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/github/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/github/api/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/github/api/clients.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/github/api/v1/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/github/api/v1/api.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/github/api/v1/client.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/github/api/v2/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/github/api/v2/api.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/github/api/v2/azure.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/github/api/v2/client.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/github/bootstrap.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/github/cache.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/github/cli.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/github/env.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/github/inject.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/inject.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/requirements.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/shell.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/ci/utils.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cli/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cli/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cli/_pathhack.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cli/clicli.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cli/install.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cli/main.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cli/managers.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cli/types.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/clipboard/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/clipboard/capi/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/clipboard/capi/darwin_cf.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/clipboard/capi/linux_x11.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/clipboard/commands.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/clipboard/platform.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/clipboard/types.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cmake.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cmdlog/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cmdlog/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cmdlog/_cmdlog.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cmdlog/cli.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/cmdlog/cmdlog.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dataclasses/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dataclasses/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dataclasses/_template.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dataclasses/cli.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dataclasses/codegen.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dataclasses/dumping.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dataserver/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dataserver/handlers.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dataserver/http.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dataserver/routes.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dataserver/server.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dataserver/targets.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/config.toml +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/content.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/gen.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/helpers.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/ops.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/rendering.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/.python-versions.json +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/configs/.gdbinit +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/configs/.tmux.conf +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/configs/.vimrc +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/depsets/python.toml +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/depsets/system.toml +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/depsets/x11.toml +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/fragments/apt.sh +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/fragments/docker.sh +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/fragments/firefox.sh +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/fragments/go.sh +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/fragments/jdk.sh +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/fragments/nvm.sh +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/fragments/pyenv.sh +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/fragments/rust.sh +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/fragments/sshd.sh +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/fragments/uv.sh +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/fragments/vcpkg.sh +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/fragments/zig.sh +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/dockerdev/resources/xu +0 -0
- {omdev-0.0.0.dev533/omdev/dockerdev/resources → omdev-0.0.0.dev534/omdev/git}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/git/magic.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/git/revisions.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/git/shallow.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/git/status.py +0 -0
- {omdev-0.0.0.dev533/omdev/dockerdev/resources/configs → omdev-0.0.0.dev534/omdev/home}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/home/paths.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/home/secrets.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/home/shadow.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/imgur.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/intellij/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/intellij/cli.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/intellij/ides.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/intellij/open.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/cli.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/default.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/inject.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/inspect.py +0 -0
- {omdev-0.0.0.dev533/omdev/dockerdev/resources/depsets → omdev-0.0.0.dev534/omdev/interp/providers}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/providers/base.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/providers/inject.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/providers/running.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/providers/standalone.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/providers/system.py +0 -0
- {omdev-0.0.0.dev533/omdev/dockerdev/resources/fragments → omdev-0.0.0.dev534/omdev/interp/pyenv}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/pyenv/inject.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/pyenv/install.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/pyenv/provider.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/pyenv/pyenv.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/resolvers.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/types.py +0 -0
- {omdev-0.0.0.dev533/omdev/git → omdev-0.0.0.dev534/omdev/interp/uv}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/uv/inject.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/uv/provider.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/uv/uv.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/interp/venvs.py +0 -0
- {omdev-0.0.0.dev533/omdev/home → omdev-0.0.0.dev534/omdev/irc}/__init__.py +0 -0
- {omdev-0.0.0.dev533/omdev/interp/providers → omdev-0.0.0.dev534/omdev/irc/messages}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/irc/messages/base.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/irc/messages/formats.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/irc/messages/messages.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/irc/messages/parsing.py +0 -0
- {omdev-0.0.0.dev533/omdev/interp/pyenv → omdev-0.0.0.dev534/omdev/irc/numerics}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/irc/numerics/formats.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/irc/numerics/numerics.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/irc/numerics/types.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/irc/protocol/LICENSE +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/irc/protocol/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/irc/protocol/consts.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/irc/protocol/errors.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/irc/protocol/message.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/irc/protocol/nuh.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/irc/protocol/parsing.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/irc/protocol/rendering.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/irc/protocol/tags.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/irc/protocol/utils.py +0 -0
- {omdev-0.0.0.dev533/omdev/interp/uv → omdev-0.0.0.dev534/omdev/java}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/java/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/java/cli.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/java/pomgen.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/java/xml.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/magic/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/magic/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/magic/cli.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/magic/find.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/magic/magic.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/magic/prepare.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/magic/styles.py +0 -0
- {omdev-0.0.0.dev533/omdev/irc → omdev-0.0.0.dev534/omdev/manifests}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/manifests/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/manifests/building.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/manifests/dumping.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/manifests/main.py +0 -0
- {omdev-0.0.0.dev533/omdev/irc/messages → omdev-0.0.0.dev534/omdev/markdown}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/markdown/incparse.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/markdown/tokens.py +0 -0
- {omdev-0.0.0.dev533/omdev/irc/numerics → omdev-0.0.0.dev534/omdev/mypy}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/mypy/debug.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/mypy/report.py +0 -0
- {omdev-0.0.0.dev533/omdev/java → omdev-0.0.0.dev534/omdev/oci}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/oci/building.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/oci/compression.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/oci/data.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/oci/datarefs.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/oci/dataserver.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/oci/loading.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/oci/media.py +0 -0
- {omdev-0.0.0.dev533/omdev/manifests → omdev-0.0.0.dev534/omdev/oci/pack}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/oci/pack/packing.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/oci/pack/repositories.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/oci/pack/unpacking.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/oci/repositories.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/oci/tars.py +0 -0
- {omdev-0.0.0.dev533/omdev/markdown → omdev-0.0.0.dev534/omdev/packaging}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/packaging/marshal.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/packaging/names.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/packaging/requires.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/packaging/revisions.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/packaging/specifiers.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/packaging/versions.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/packaging/wheelfile.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/pip.py +0 -0
- {omdev-0.0.0.dev533/omdev/mypy → omdev-0.0.0.dev534/omdev/precheck}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/precheck/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/precheck/base.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/precheck/blanklines.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/precheck/caches.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/precheck/git.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/precheck/imports.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/precheck/lite.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/precheck/main.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/precheck/manifests.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/precheck/scripts.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/precheck/unicode.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/__init__.py +0 -0
- {omdev-0.0.0.dev533/omdev/oci → omdev-0.0.0.dev534/omdev/py/asts}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/asts/parents.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/asts/toplevel.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/asts/visitors.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/attrdocs.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/bracepy.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/classdot.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/docstrings/LICENSE +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/docstrings/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/docstrings/attrdoc.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/docstrings/common.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/docstrings/epydoc.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/docstrings/google.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/docstrings/numpydoc.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/docstrings/parser.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/docstrings/rest.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/findimports.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/reprs.py +0 -0
- {omdev-0.0.0.dev533/omdev/oci/pack → omdev-0.0.0.dev534/omdev/py/scripts}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/scripts/bumpversion.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/scripts/execstat.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/scripts/importtrace.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/srcheaders.py +0 -0
- {omdev-0.0.0.dev533/omdev/packaging → omdev-0.0.0.dev534/omdev/py/tokens}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/tokens/all.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/tokens/tokenizert.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/tokens/utils.py +0 -0
- {omdev-0.0.0.dev533/omdev/precheck → omdev-0.0.0.dev534/omdev/py/tools}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/tools/importscan.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/tools/mkrelimp.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/py/tools/pipdepup.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/pyproject/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/pyproject/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/pyproject/cli.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/pyproject/configs.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/pyproject/inject.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/pyproject/reqs.py +0 -0
- /omdev-0.0.0.dev533/omdev/pyproject/resources/docker-dev.sh → /omdev-0.0.0.dev534/omdev/pyproject/resources/dockerdev.sh +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/pyproject/resources/python.sh +0 -0
- {omdev-0.0.0.dev533/omdev/py/asts → omdev-0.0.0.dev534/omdev/pyproject/tools}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/pyproject/tools/aboutdeps.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/pyproject/tools/buildrs.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/pyproject/tools/pyversions.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/pyproject/venvs.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/pyproject/versions.py +0 -0
- {omdev-0.0.0.dev533/omdev/py/scripts → omdev-0.0.0.dev534/omdev/rs}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/scripts/__init__.py +0 -0
- {omdev-0.0.0.dev533/omdev/py/tokens → omdev-0.0.0.dev534/omdev/scripts/lib}/__init__.py +0 -0
- {omdev-0.0.0.dev533/omdev/py/tools → omdev-0.0.0.dev534/omdev/scripts/lib/formats}/__init__.py +0 -0
- {omdev-0.0.0.dev533/omdev/pyproject/resources → omdev-0.0.0.dev534/omdev/scripts/lib/io}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/scripts/lib/io/streams.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/scripts/lib/logs.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/scripts/slowcat.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/scripts/tmpexec.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tagstrings.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/cloc.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/diff.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/doc.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/docker.py +0 -0
- {omdev-0.0.0.dev533/omdev/pyproject/tools → omdev-0.0.0.dev534/omdev/tools/git}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/git/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/git/cli.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/git/cloning.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/git/consts.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/git/messages.py +0 -0
- {omdev-0.0.0.dev533/omdev/rs → omdev-0.0.0.dev534/omdev/tools/json}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/json/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/json/cli.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/json/formats.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/json/io.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/json/parsing.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/json/processing.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/json/rendering.py +0 -0
- {omdev-0.0.0.dev533/omdev/scripts/lib → omdev-0.0.0.dev534/omdev/tools/jsonview}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/jsonview/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/jsonview/cli.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/jsonview/resources/jsonview.css +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/jsonview/resources/jsonview.html.j2 +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/jsonview/resources/jsonview.js +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/linehisto.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/mkenv.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/notebook.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/pawk/README.md +0 -0
- {omdev-0.0.0.dev533/omdev/scripts/lib/formats → omdev-0.0.0.dev534/omdev/tools/pawk}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/pawk/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/pawk/pawk.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/pip.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/prof.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/qr.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/shadow.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/shell.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tools/sqlrepl.py +0 -0
- {omdev-0.0.0.dev533/omdev/scripts/lib/io → omdev-0.0.0.dev534/omdev/tui}/__init__.py +0 -0
- {omdev-0.0.0.dev533/omdev/tools/git → omdev-0.0.0.dev534/omdev/tui/apps}/__init__.py +0 -0
- {omdev-0.0.0.dev533/omdev/tools/json → omdev-0.0.0.dev534/omdev/tui/apps/edit}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/apps/edit/main.py +0 -0
- {omdev-0.0.0.dev533/omdev/tools/jsonview → omdev-0.0.0.dev534/omdev/tui/apps/irc}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/apps/irc/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/apps/irc/app.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/apps/irc/client.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/apps/irc/commands.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/apps/irc/main.py +0 -0
- {omdev-0.0.0.dev533/omdev/tools/jsonview/resources → omdev-0.0.0.dev534/omdev/tui/apps/markdown}/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/apps/markdown/__main__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/apps/markdown/cli.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/rich/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/rich/console2.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/rich/markdown2.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/textual/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/textual/app2.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/textual/autocomplete/LICENSE +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/textual/autocomplete/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/textual/autocomplete/matching.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/textual/autocomplete/paths.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/textual/autocomplete/widget.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/textual/binding2.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/textual/clipboard.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/textual/debug/__init__.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/textual/debug/dominfo.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/textual/debug/screen.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/textual/devtools.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/textual/drivers2.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/textual/logging2.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/textual/screen2.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev/tui/textual/types.py +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev.egg-info/dependency_links.txt +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev.egg-info/entry_points.txt +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/omdev.egg-info/top_level.txt +0 -0
- {omdev-0.0.0.dev533 → omdev-0.0.0.dev534}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: omdev
|
|
3
|
-
Version: 0.0.0.
|
|
3
|
+
Version: 0.0.0.dev534
|
|
4
4
|
Summary: omdev
|
|
5
5
|
Author: wrmsr
|
|
6
6
|
License-Expression: BSD-3-Clause
|
|
@@ -14,7 +14,7 @@ Classifier: Programming Language :: Python :: 3.13
|
|
|
14
14
|
Requires-Python: >=3.13
|
|
15
15
|
Description-Content-Type: text/markdown
|
|
16
16
|
License-File: LICENSE
|
|
17
|
-
Requires-Dist: omlish==0.0.0.
|
|
17
|
+
Requires-Dist: omlish==0.0.0.dev534
|
|
18
18
|
Provides-Extra: all
|
|
19
19
|
Requires-Dist: black~=26.1; extra == "all"
|
|
20
20
|
Requires-Dist: pycparser~=3.0; extra == "all"
|
|
@@ -38,7 +38,7 @@ def __omlish_amalg__(): # noqa
|
|
|
38
38
|
return dict(
|
|
39
39
|
src_files=[
|
|
40
40
|
dict(path='../../omlish/lite/abstract.py', sha1='a2fc3f3697fa8de5247761e9d554e70176f37aac'),
|
|
41
|
-
dict(path='../../omlish/lite/check.py', sha1='
|
|
41
|
+
dict(path='../../omlish/lite/check.py', sha1='5e625d74d4ad4e0492e25acac42820baa9956965'),
|
|
42
42
|
dict(path='../../omlish/lite/json.py', sha1='57eeddc4d23a17931e00284ffa5cb6e3ce089486'),
|
|
43
43
|
dict(path='../../omlish/lite/objects.py', sha1='9566bbf3530fd71fcc56321485216b592fae21e9'),
|
|
44
44
|
dict(path='../../omlish/lite/reflect.py', sha1='c4fec44bf144e9d93293c996af06f6c65fc5e63d'),
|
|
@@ -355,7 +355,7 @@ class Checks:
|
|
|
355
355
|
...
|
|
356
356
|
|
|
357
357
|
def isinstance(self, v, spec, msg=None):
|
|
358
|
-
if not isinstance(v, self._unpack_isinstance_spec(spec)):
|
|
358
|
+
if not isinstance(v, spec if type(spec) is type else self._unpack_isinstance_spec(spec)):
|
|
359
359
|
self._raise(
|
|
360
360
|
TypeError,
|
|
361
361
|
'Must be instance',
|
|
@@ -375,7 +375,7 @@ class Checks:
|
|
|
375
375
|
...
|
|
376
376
|
|
|
377
377
|
def of_isinstance(self, spec, msg=None, /):
|
|
378
|
-
spec = self._unpack_isinstance_spec(spec)
|
|
378
|
+
spec = spec if type(spec) is type else self._unpack_isinstance_spec(spec)
|
|
379
379
|
|
|
380
380
|
def inner(v):
|
|
381
381
|
return self.isinstance(v, spec, msg)
|
|
@@ -400,7 +400,7 @@ class Checks:
|
|
|
400
400
|
return inner
|
|
401
401
|
|
|
402
402
|
def not_isinstance(self, v: T, spec: ta.Any, msg: CheckMessage = None, /) -> T: # noqa
|
|
403
|
-
if isinstance(v, self._unpack_isinstance_spec(spec)):
|
|
403
|
+
if isinstance(v, spec if type(spec) is type else self._unpack_isinstance_spec(spec)):
|
|
404
404
|
self._raise(
|
|
405
405
|
TypeError,
|
|
406
406
|
'Must not be instance',
|
|
@@ -412,7 +412,7 @@ class Checks:
|
|
|
412
412
|
return v
|
|
413
413
|
|
|
414
414
|
def of_not_isinstance(self, spec: ta.Any, msg: CheckMessage = None, /) -> ta.Callable[[T], T]:
|
|
415
|
-
spec = self._unpack_isinstance_spec(spec)
|
|
415
|
+
spec = spec if type(spec) is type else self._unpack_isinstance_spec(spec)
|
|
416
416
|
|
|
417
417
|
def inner(v):
|
|
418
418
|
return self.not_isinstance(v, spec, msg)
|
|
@@ -1,3 +1,46 @@
|
|
|
1
|
+
"""
|
|
2
|
+
TODO:
|
|
3
|
+
- default run bash
|
|
4
|
+
- all of the below stuff
|
|
5
|
+
|
|
6
|
+
====
|
|
7
|
+
|
|
8
|
+
if [ -t 1 ] ; then
|
|
9
|
+
TTY_ENV_ARGS="-e LINES=$(tput lines) -e COLUMNS=$(tput cols)"
|
|
10
|
+
else
|
|
11
|
+
TTY_ENV_ARGS=""
|
|
12
|
+
fi
|
|
13
|
+
|
|
14
|
+
SERVICE_NAME="$(basename "$SCRIPT_DIR")-dev"
|
|
15
|
+
if ! [ $# -eq 0 ] ; then
|
|
16
|
+
if [ "$1" = "--amd64" ] ; then
|
|
17
|
+
SERVICE_NAME="$SERVICE_NAME-amd64"
|
|
18
|
+
shift
|
|
19
|
+
fi
|
|
20
|
+
fi
|
|
21
|
+
|
|
22
|
+
CONTAINER_ID=$(docker-compose -f 'docker/compose.yml' ps -q "$SERVICE_NAME")
|
|
23
|
+
if [ -z "$CONTAINER_ID" ] ; then
|
|
24
|
+
echo "$SERVICE_NAME not running" 1>&2
|
|
25
|
+
exit 1
|
|
26
|
+
fi
|
|
27
|
+
|
|
28
|
+
if [ -z "$DOCKER_HOST_PLATFORM" ] ; then
|
|
29
|
+
if [ $(uname) = "Linux" ] ; then
|
|
30
|
+
DOCKER_HOST_PLATFORM=linux
|
|
31
|
+
elif [ $(uname) = "Darwin" ] ; then
|
|
32
|
+
DOCKER_HOST_PLATFORM=darwin
|
|
33
|
+
fi
|
|
34
|
+
fi
|
|
35
|
+
|
|
36
|
+
exec docker exec \
|
|
37
|
+
$TTY_ENV_ARGS \
|
|
38
|
+
-e DOCKER_HOST_PLATFORM="$DOCKER_HOST_PLATFORM" \
|
|
39
|
+
--privileged \
|
|
40
|
+
--detach-keys 'ctrl-o,ctrl-d' \
|
|
41
|
+
-it "$CONTAINER_ID" \
|
|
42
|
+
"$@"
|
|
43
|
+
"""
|
|
1
44
|
import os.path
|
|
2
45
|
import re
|
|
3
46
|
import shutil
|
|
@@ -39,7 +39,7 @@ def __omlish_amalg__(): # noqa
|
|
|
39
39
|
src_files=[
|
|
40
40
|
dict(path='../../omlish/lite/abstract.py', sha1='a2fc3f3697fa8de5247761e9d554e70176f37aac'),
|
|
41
41
|
dict(path='../../omlish/lite/cached.py', sha1='0c33cf961ac8f0727284303c7a30c5ea98f714f2'),
|
|
42
|
-
dict(path='../../omlish/lite/check.py', sha1='
|
|
42
|
+
dict(path='../../omlish/lite/check.py', sha1='5e625d74d4ad4e0492e25acac42820baa9956965'),
|
|
43
43
|
dict(path='../../omlish/lite/objects.py', sha1='9566bbf3530fd71fcc56321485216b592fae21e9'),
|
|
44
44
|
dict(path='../../omlish/lite/reflect.py', sha1='c4fec44bf144e9d93293c996af06f6c65fc5e63d'),
|
|
45
45
|
dict(path='../../omlish/lite/strings.py', sha1='89831ecbc34ad80e118a865eceb390ed399dc4d6'),
|
|
@@ -471,7 +471,7 @@ class Checks:
|
|
|
471
471
|
...
|
|
472
472
|
|
|
473
473
|
def isinstance(self, v, spec, msg=None):
|
|
474
|
-
if not isinstance(v, self._unpack_isinstance_spec(spec)):
|
|
474
|
+
if not isinstance(v, spec if type(spec) is type else self._unpack_isinstance_spec(spec)):
|
|
475
475
|
self._raise(
|
|
476
476
|
TypeError,
|
|
477
477
|
'Must be instance',
|
|
@@ -491,7 +491,7 @@ class Checks:
|
|
|
491
491
|
...
|
|
492
492
|
|
|
493
493
|
def of_isinstance(self, spec, msg=None, /):
|
|
494
|
-
spec = self._unpack_isinstance_spec(spec)
|
|
494
|
+
spec = spec if type(spec) is type else self._unpack_isinstance_spec(spec)
|
|
495
495
|
|
|
496
496
|
def inner(v):
|
|
497
497
|
return self.isinstance(v, spec, msg)
|
|
@@ -516,7 +516,7 @@ class Checks:
|
|
|
516
516
|
return inner
|
|
517
517
|
|
|
518
518
|
def not_isinstance(self, v: T, spec: ta.Any, msg: CheckMessage = None, /) -> T: # noqa
|
|
519
|
-
if isinstance(v, self._unpack_isinstance_spec(spec)):
|
|
519
|
+
if isinstance(v, spec if type(spec) is type else self._unpack_isinstance_spec(spec)):
|
|
520
520
|
self._raise(
|
|
521
521
|
TypeError,
|
|
522
522
|
'Must not be instance',
|
|
@@ -528,7 +528,7 @@ class Checks:
|
|
|
528
528
|
return v
|
|
529
529
|
|
|
530
530
|
def of_not_isinstance(self, spec: ta.Any, msg: CheckMessage = None, /) -> ta.Callable[[T], T]:
|
|
531
|
-
spec = self._unpack_isinstance_spec(spec)
|
|
531
|
+
spec = spec if type(spec) is type else self._unpack_isinstance_spec(spec)
|
|
532
532
|
|
|
533
533
|
def inner(v):
|
|
534
534
|
return self.not_isinstance(v, spec, msg)
|
|
@@ -27,6 +27,7 @@ vcs+protocol://repo_url/#egg=pkg&subdirectory=pkg_dir
|
|
|
27
27
|
# ruff: noqa: UP006 UP007 UP045
|
|
28
28
|
import abc
|
|
29
29
|
import dataclasses as dc
|
|
30
|
+
import glob
|
|
30
31
|
import importlib
|
|
31
32
|
import inspect
|
|
32
33
|
import os.path
|
|
@@ -40,6 +41,7 @@ import typing as ta
|
|
|
40
41
|
from omlish.formats.toml.writer import TomlWriter
|
|
41
42
|
from omlish.lite.abstract import Abstract
|
|
42
43
|
from omlish.lite.cached import cached_nullary
|
|
44
|
+
from omlish.lite.check import check
|
|
43
45
|
from omlish.logs.modules import get_module_logger
|
|
44
46
|
from omlish.subprocesses.sync import subprocesses
|
|
45
47
|
|
|
@@ -150,28 +152,59 @@ class BasePyprojectPackageGenerator(Abstract):
|
|
|
150
152
|
inc: ta.List[str]
|
|
151
153
|
exc: ta.List[str]
|
|
152
154
|
|
|
155
|
+
_PKG_DATA_EXCLUDE_DIRS: ta.ClassVar[ta.AbstractSet[str]] = frozenset([
|
|
156
|
+
'__pycache__',
|
|
157
|
+
])
|
|
158
|
+
|
|
153
159
|
@cached_nullary
|
|
154
|
-
def _collect_pkg_data(self) -> _PkgData:
|
|
155
|
-
|
|
156
|
-
exc: ta.List[str] = []
|
|
160
|
+
def _collect_pkg_data(self) -> ta.Mapping[str, _PkgData]:
|
|
161
|
+
dct: ta.Dict[str, BasePyprojectPackageGenerator._PkgData] = {}
|
|
157
162
|
|
|
158
163
|
for p, ds, fs in os.walk(self._dir_name): # noqa
|
|
159
164
|
for f in fs:
|
|
160
165
|
if f != '.pkgdata':
|
|
161
166
|
continue
|
|
162
|
-
|
|
163
|
-
log.info('Found pkgdata %s
|
|
167
|
+
|
|
168
|
+
log.info('Found pkgdata %s', p)
|
|
164
169
|
with open(os.path.join(p, f)) as fo:
|
|
165
170
|
src = fo.read()
|
|
171
|
+
|
|
172
|
+
pn = p.replace(os.sep, '.')
|
|
173
|
+
check.not_in(pn, dct)
|
|
174
|
+
|
|
175
|
+
inc: ta.List[str] = []
|
|
176
|
+
exc: ta.List[str] = []
|
|
177
|
+
|
|
166
178
|
for l in src.splitlines():
|
|
167
179
|
if not (l := l.strip()):
|
|
168
180
|
continue
|
|
181
|
+
|
|
169
182
|
if (bang := l.startswith('!')):
|
|
170
183
|
l = l[1:]
|
|
171
|
-
rlp = os.path.join(rp, l) if rp != '.' else l
|
|
172
|
-
(exc if bang else inc).append(rlp)
|
|
173
184
|
|
|
174
|
-
|
|
185
|
+
if '**' in l:
|
|
186
|
+
if bang:
|
|
187
|
+
raise ValueError('Cannot exclude recursive globs')
|
|
188
|
+
check.state(not l.endswith(os.sep))
|
|
189
|
+
ge = l.rsplit(os.sep, maxsplit=1)[-1]
|
|
190
|
+
|
|
191
|
+
gds = set()
|
|
192
|
+
for g in glob.glob(l, root_dir=p, recursive=True):
|
|
193
|
+
if os.path.isfile(gp := os.path.join(p, g)):
|
|
194
|
+
if any(gpp in self._PKG_DATA_EXCLUDE_DIRS for gpp in os.path.dirname(gp).split(os.sep)):
|
|
195
|
+
continue
|
|
196
|
+
gd = os.path.dirname(g)
|
|
197
|
+
gds.add(gd)
|
|
198
|
+
|
|
199
|
+
for gd in sorted(gds):
|
|
200
|
+
inc.append(os.path.join(gd, ge))
|
|
201
|
+
|
|
202
|
+
else:
|
|
203
|
+
(exc if bang else inc).append(l)
|
|
204
|
+
|
|
205
|
+
dct[pn] = self._PkgData(inc, exc)
|
|
206
|
+
|
|
207
|
+
return dct
|
|
175
208
|
|
|
176
209
|
#
|
|
177
210
|
|
|
@@ -353,10 +386,12 @@ class PyprojectPackageGenerator(BasePyprojectPackageGenerator):
|
|
|
353
386
|
epd = dict(st.pop('exclude_package_data', {}))
|
|
354
387
|
|
|
355
388
|
cpd = self._collect_pkg_data()
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
389
|
+
for pdk, pdv in cpd.items():
|
|
390
|
+
pdl = TomlWriter.Literal(f"'{pdk}'")
|
|
391
|
+
if pdv.inc:
|
|
392
|
+
pd.setdefault(pdl, []).extend(sorted(set(pdv.inc)))
|
|
393
|
+
if pdv.exc:
|
|
394
|
+
pd.setdefault(pdl, []).extend(sorted(set(pdv.exc)))
|
|
360
395
|
|
|
361
396
|
if pd:
|
|
362
397
|
pyp_dct['tool.setuptools.package-data'] = pd
|
|
@@ -101,7 +101,7 @@ def __omlish_amalg__(): # noqa
|
|
|
101
101
|
dict(path='../../omlish/lite/abstract.py', sha1='a2fc3f3697fa8de5247761e9d554e70176f37aac'),
|
|
102
102
|
dict(path='../../omlish/lite/asyncs.py', sha1='b3f2251c56617ce548abf9c333ac996b63edb23e'),
|
|
103
103
|
dict(path='../../omlish/lite/cached.py', sha1='0c33cf961ac8f0727284303c7a30c5ea98f714f2'),
|
|
104
|
-
dict(path='../../omlish/lite/check.py', sha1='
|
|
104
|
+
dict(path='../../omlish/lite/check.py', sha1='5e625d74d4ad4e0492e25acac42820baa9956965'),
|
|
105
105
|
dict(path='../../omlish/lite/contextmanagers.py', sha1='993f5ed96d3410f739a20363f55670d5e5267fa3'),
|
|
106
106
|
dict(path='../../omlish/lite/dataclasses.py', sha1='8b144d1d9474d96cf2a35f4db5cb224c30f538d6'),
|
|
107
107
|
dict(path='../../omlish/lite/json.py', sha1='57eeddc4d23a17931e00284ffa5cb6e3ce089486'),
|
|
@@ -1372,7 +1372,7 @@ class Checks:
|
|
|
1372
1372
|
...
|
|
1373
1373
|
|
|
1374
1374
|
def isinstance(self, v, spec, msg=None):
|
|
1375
|
-
if not isinstance(v, self._unpack_isinstance_spec(spec)):
|
|
1375
|
+
if not isinstance(v, spec if type(spec) is type else self._unpack_isinstance_spec(spec)):
|
|
1376
1376
|
self._raise(
|
|
1377
1377
|
TypeError,
|
|
1378
1378
|
'Must be instance',
|
|
@@ -1392,7 +1392,7 @@ class Checks:
|
|
|
1392
1392
|
...
|
|
1393
1393
|
|
|
1394
1394
|
def of_isinstance(self, spec, msg=None, /):
|
|
1395
|
-
spec = self._unpack_isinstance_spec(spec)
|
|
1395
|
+
spec = spec if type(spec) is type else self._unpack_isinstance_spec(spec)
|
|
1396
1396
|
|
|
1397
1397
|
def inner(v):
|
|
1398
1398
|
return self.isinstance(v, spec, msg)
|
|
@@ -1417,7 +1417,7 @@ class Checks:
|
|
|
1417
1417
|
return inner
|
|
1418
1418
|
|
|
1419
1419
|
def not_isinstance(self, v: T, spec: ta.Any, msg: CheckMessage = None, /) -> T: # noqa
|
|
1420
|
-
if isinstance(v, self._unpack_isinstance_spec(spec)):
|
|
1420
|
+
if isinstance(v, spec if type(spec) is type else self._unpack_isinstance_spec(spec)):
|
|
1421
1421
|
self._raise(
|
|
1422
1422
|
TypeError,
|
|
1423
1423
|
'Must not be instance',
|
|
@@ -1429,7 +1429,7 @@ class Checks:
|
|
|
1429
1429
|
return v
|
|
1430
1430
|
|
|
1431
1431
|
def of_not_isinstance(self, spec: ta.Any, msg: CheckMessage = None, /) -> ta.Callable[[T], T]:
|
|
1432
|
-
spec = self._unpack_isinstance_spec(spec)
|
|
1432
|
+
spec = spec if type(spec) is type else self._unpack_isinstance_spec(spec)
|
|
1433
1433
|
|
|
1434
1434
|
def inner(v):
|
|
1435
1435
|
return self.not_isinstance(v, spec, msg)
|
|
@@ -56,7 +56,7 @@ def __omlish_amalg__(): # noqa
|
|
|
56
56
|
dict(path='../packaging/versions.py', sha1='71627ad600b3529b829b0e227b0952f2c63c7271'),
|
|
57
57
|
dict(path='../../omlish/lite/abstract.py', sha1='a2fc3f3697fa8de5247761e9d554e70176f37aac'),
|
|
58
58
|
dict(path='../../omlish/lite/cached.py', sha1='0c33cf961ac8f0727284303c7a30c5ea98f714f2'),
|
|
59
|
-
dict(path='../../omlish/lite/check.py', sha1='
|
|
59
|
+
dict(path='../../omlish/lite/check.py', sha1='5e625d74d4ad4e0492e25acac42820baa9956965'),
|
|
60
60
|
dict(path='../../omlish/lite/json.py', sha1='57eeddc4d23a17931e00284ffa5cb6e3ce089486'),
|
|
61
61
|
dict(path='../../omlish/lite/reflect.py', sha1='c4fec44bf144e9d93293c996af06f6c65fc5e63d'),
|
|
62
62
|
dict(path='../../omlish/lite/strings.py', sha1='89831ecbc34ad80e118a865eceb390ed399dc4d6'),
|
|
@@ -970,7 +970,7 @@ class Checks:
|
|
|
970
970
|
...
|
|
971
971
|
|
|
972
972
|
def isinstance(self, v, spec, msg=None):
|
|
973
|
-
if not isinstance(v, self._unpack_isinstance_spec(spec)):
|
|
973
|
+
if not isinstance(v, spec if type(spec) is type else self._unpack_isinstance_spec(spec)):
|
|
974
974
|
self._raise(
|
|
975
975
|
TypeError,
|
|
976
976
|
'Must be instance',
|
|
@@ -990,7 +990,7 @@ class Checks:
|
|
|
990
990
|
...
|
|
991
991
|
|
|
992
992
|
def of_isinstance(self, spec, msg=None, /):
|
|
993
|
-
spec = self._unpack_isinstance_spec(spec)
|
|
993
|
+
spec = spec if type(spec) is type else self._unpack_isinstance_spec(spec)
|
|
994
994
|
|
|
995
995
|
def inner(v):
|
|
996
996
|
return self.isinstance(v, spec, msg)
|
|
@@ -1015,7 +1015,7 @@ class Checks:
|
|
|
1015
1015
|
return inner
|
|
1016
1016
|
|
|
1017
1017
|
def not_isinstance(self, v: T, spec: ta.Any, msg: CheckMessage = None, /) -> T: # noqa
|
|
1018
|
-
if isinstance(v, self._unpack_isinstance_spec(spec)):
|
|
1018
|
+
if isinstance(v, spec if type(spec) is type else self._unpack_isinstance_spec(spec)):
|
|
1019
1019
|
self._raise(
|
|
1020
1020
|
TypeError,
|
|
1021
1021
|
'Must not be instance',
|
|
@@ -1027,7 +1027,7 @@ class Checks:
|
|
|
1027
1027
|
return v
|
|
1028
1028
|
|
|
1029
1029
|
def of_not_isinstance(self, spec: ta.Any, msg: CheckMessage = None, /) -> ta.Callable[[T], T]:
|
|
1030
|
-
spec = self._unpack_isinstance_spec(spec)
|
|
1030
|
+
spec = spec if type(spec) is type else self._unpack_isinstance_spec(spec)
|
|
1031
1031
|
|
|
1032
1032
|
def inner(v):
|
|
1033
1033
|
return self.not_isinstance(v, spec, msg)
|
|
@@ -35,7 +35,7 @@ def __omlish_amalg__(): # noqa
|
|
|
35
35
|
return dict(
|
|
36
36
|
src_files=[
|
|
37
37
|
dict(path='../../../lite/abstract.py', sha1='a2fc3f3697fa8de5247761e9d554e70176f37aac'),
|
|
38
|
-
dict(path='../../../lite/check.py', sha1='
|
|
38
|
+
dict(path='../../../lite/check.py', sha1='5e625d74d4ad4e0492e25acac42820baa9956965'),
|
|
39
39
|
dict(path='../../../lite/dataclasses.py', sha1='8b144d1d9474d96cf2a35f4db5cb224c30f538d6'),
|
|
40
40
|
dict(path='errors.py', sha1='8fa73c90292f56f8faaedebb2f478ff6a3b95460'),
|
|
41
41
|
dict(path='tokens.py', sha1='d52876a2a525bc99eb554fe28c3d27e7e01f43a9'),
|
|
@@ -357,7 +357,7 @@ class Checks:
|
|
|
357
357
|
...
|
|
358
358
|
|
|
359
359
|
def isinstance(self, v, spec, msg=None):
|
|
360
|
-
if not isinstance(v, self._unpack_isinstance_spec(spec)):
|
|
360
|
+
if not isinstance(v, spec if type(spec) is type else self._unpack_isinstance_spec(spec)):
|
|
361
361
|
self._raise(
|
|
362
362
|
TypeError,
|
|
363
363
|
'Must be instance',
|
|
@@ -377,7 +377,7 @@ class Checks:
|
|
|
377
377
|
...
|
|
378
378
|
|
|
379
379
|
def of_isinstance(self, spec, msg=None, /):
|
|
380
|
-
spec = self._unpack_isinstance_spec(spec)
|
|
380
|
+
spec = spec if type(spec) is type else self._unpack_isinstance_spec(spec)
|
|
381
381
|
|
|
382
382
|
def inner(v):
|
|
383
383
|
return self.isinstance(v, spec, msg)
|
|
@@ -402,7 +402,7 @@ class Checks:
|
|
|
402
402
|
return inner
|
|
403
403
|
|
|
404
404
|
def not_isinstance(self, v: T, spec: ta.Any, msg: CheckMessage = None, /) -> T: # noqa
|
|
405
|
-
if isinstance(v, self._unpack_isinstance_spec(spec)):
|
|
405
|
+
if isinstance(v, spec if type(spec) is type else self._unpack_isinstance_spec(spec)):
|
|
406
406
|
self._raise(
|
|
407
407
|
TypeError,
|
|
408
408
|
'Must not be instance',
|
|
@@ -414,7 +414,7 @@ class Checks:
|
|
|
414
414
|
return v
|
|
415
415
|
|
|
416
416
|
def of_not_isinstance(self, spec: ta.Any, msg: CheckMessage = None, /) -> ta.Callable[[T], T]:
|
|
417
|
-
spec = self._unpack_isinstance_spec(spec)
|
|
417
|
+
spec = spec if type(spec) is type else self._unpack_isinstance_spec(spec)
|
|
418
418
|
|
|
419
419
|
def inner(v):
|
|
420
420
|
return self.not_isinstance(v, spec, msg)
|
|
@@ -32,7 +32,7 @@ def __omlish_amalg__(): # noqa
|
|
|
32
32
|
return dict(
|
|
33
33
|
src_files=[
|
|
34
34
|
dict(path='abstract.py', sha1='a2fc3f3697fa8de5247761e9d554e70176f37aac'),
|
|
35
|
-
dict(path='check.py', sha1='
|
|
35
|
+
dict(path='check.py', sha1='5e625d74d4ad4e0492e25acac42820baa9956965'),
|
|
36
36
|
dict(path='reflect.py', sha1='c4fec44bf144e9d93293c996af06f6c65fc5e63d'),
|
|
37
37
|
dict(path='maybes.py', sha1='04d2fcbea17028a5e6b8e7a7fb742375495ed233'),
|
|
38
38
|
dict(path='inject.py', sha1='6f097e3170019a34ff6834d36fcc9cbeed3a7ab4'),
|
|
@@ -355,7 +355,7 @@ class Checks:
|
|
|
355
355
|
...
|
|
356
356
|
|
|
357
357
|
def isinstance(self, v, spec, msg=None):
|
|
358
|
-
if not isinstance(v, self._unpack_isinstance_spec(spec)):
|
|
358
|
+
if not isinstance(v, spec if type(spec) is type else self._unpack_isinstance_spec(spec)):
|
|
359
359
|
self._raise(
|
|
360
360
|
TypeError,
|
|
361
361
|
'Must be instance',
|
|
@@ -375,7 +375,7 @@ class Checks:
|
|
|
375
375
|
...
|
|
376
376
|
|
|
377
377
|
def of_isinstance(self, spec, msg=None, /):
|
|
378
|
-
spec = self._unpack_isinstance_spec(spec)
|
|
378
|
+
spec = spec if type(spec) is type else self._unpack_isinstance_spec(spec)
|
|
379
379
|
|
|
380
380
|
def inner(v):
|
|
381
381
|
return self.isinstance(v, spec, msg)
|
|
@@ -400,7 +400,7 @@ class Checks:
|
|
|
400
400
|
return inner
|
|
401
401
|
|
|
402
402
|
def not_isinstance(self, v: T, spec: ta.Any, msg: CheckMessage = None, /) -> T: # noqa
|
|
403
|
-
if isinstance(v, self._unpack_isinstance_spec(spec)):
|
|
403
|
+
if isinstance(v, spec if type(spec) is type else self._unpack_isinstance_spec(spec)):
|
|
404
404
|
self._raise(
|
|
405
405
|
TypeError,
|
|
406
406
|
'Must not be instance',
|
|
@@ -412,7 +412,7 @@ class Checks:
|
|
|
412
412
|
return v
|
|
413
413
|
|
|
414
414
|
def of_not_isinstance(self, spec: ta.Any, msg: CheckMessage = None, /) -> ta.Callable[[T], T]:
|
|
415
|
-
spec = self._unpack_isinstance_spec(spec)
|
|
415
|
+
spec = spec if type(spec) is type else self._unpack_isinstance_spec(spec)
|
|
416
416
|
|
|
417
417
|
def inner(v):
|
|
418
418
|
return self.not_isinstance(v, spec, msg)
|
|
@@ -41,7 +41,7 @@ def __omlish_amalg__(): # noqa
|
|
|
41
41
|
return dict(
|
|
42
42
|
src_files=[
|
|
43
43
|
dict(path='abstract.py', sha1='a2fc3f3697fa8de5247761e9d554e70176f37aac'),
|
|
44
|
-
dict(path='check.py', sha1='
|
|
44
|
+
dict(path='check.py', sha1='5e625d74d4ad4e0492e25acac42820baa9956965'),
|
|
45
45
|
dict(path='objects.py', sha1='9566bbf3530fd71fcc56321485216b592fae21e9'),
|
|
46
46
|
dict(path='reflect.py', sha1='c4fec44bf144e9d93293c996af06f6c65fc5e63d'),
|
|
47
47
|
dict(path='strings.py', sha1='89831ecbc34ad80e118a865eceb390ed399dc4d6'),
|
|
@@ -356,7 +356,7 @@ class Checks:
|
|
|
356
356
|
...
|
|
357
357
|
|
|
358
358
|
def isinstance(self, v, spec, msg=None):
|
|
359
|
-
if not isinstance(v, self._unpack_isinstance_spec(spec)):
|
|
359
|
+
if not isinstance(v, spec if type(spec) is type else self._unpack_isinstance_spec(spec)):
|
|
360
360
|
self._raise(
|
|
361
361
|
TypeError,
|
|
362
362
|
'Must be instance',
|
|
@@ -376,7 +376,7 @@ class Checks:
|
|
|
376
376
|
...
|
|
377
377
|
|
|
378
378
|
def of_isinstance(self, spec, msg=None, /):
|
|
379
|
-
spec = self._unpack_isinstance_spec(spec)
|
|
379
|
+
spec = spec if type(spec) is type else self._unpack_isinstance_spec(spec)
|
|
380
380
|
|
|
381
381
|
def inner(v):
|
|
382
382
|
return self.isinstance(v, spec, msg)
|
|
@@ -401,7 +401,7 @@ class Checks:
|
|
|
401
401
|
return inner
|
|
402
402
|
|
|
403
403
|
def not_isinstance(self, v: T, spec: ta.Any, msg: CheckMessage = None, /) -> T: # noqa
|
|
404
|
-
if isinstance(v, self._unpack_isinstance_spec(spec)):
|
|
404
|
+
if isinstance(v, spec if type(spec) is type else self._unpack_isinstance_spec(spec)):
|
|
405
405
|
self._raise(
|
|
406
406
|
TypeError,
|
|
407
407
|
'Must not be instance',
|
|
@@ -413,7 +413,7 @@ class Checks:
|
|
|
413
413
|
return v
|
|
414
414
|
|
|
415
415
|
def of_not_isinstance(self, spec: ta.Any, msg: CheckMessage = None, /) -> ta.Callable[[T], T]:
|
|
416
|
-
spec = self._unpack_isinstance_spec(spec)
|
|
416
|
+
spec = spec if type(spec) is type else self._unpack_isinstance_spec(spec)
|
|
417
417
|
|
|
418
418
|
def inner(v):
|
|
419
419
|
return self.not_isinstance(v, spec, msg)
|
|
@@ -96,7 +96,7 @@ def __omlish_amalg__(): # noqa
|
|
|
96
96
|
dict(path='../../omlish/lite/abstract.py', sha1='a2fc3f3697fa8de5247761e9d554e70176f37aac'),
|
|
97
97
|
dict(path='../../omlish/lite/asyncs.py', sha1='b3f2251c56617ce548abf9c333ac996b63edb23e'),
|
|
98
98
|
dict(path='../../omlish/lite/cached.py', sha1='0c33cf961ac8f0727284303c7a30c5ea98f714f2'),
|
|
99
|
-
dict(path='../../omlish/lite/check.py', sha1='
|
|
99
|
+
dict(path='../../omlish/lite/check.py', sha1='5e625d74d4ad4e0492e25acac42820baa9956965'),
|
|
100
100
|
dict(path='../../omlish/lite/json.py', sha1='57eeddc4d23a17931e00284ffa5cb6e3ce089486'),
|
|
101
101
|
dict(path='../../omlish/lite/objects.py', sha1='9566bbf3530fd71fcc56321485216b592fae21e9'),
|
|
102
102
|
dict(path='../../omlish/lite/reflect.py', sha1='c4fec44bf144e9d93293c996af06f6c65fc5e63d'),
|
|
@@ -148,7 +148,7 @@ def __omlish_amalg__(): # noqa
|
|
|
148
148
|
dict(path='../interp/providers/system.py', sha1='9638a154475ca98775159d27739563ac7fb2eb16'),
|
|
149
149
|
dict(path='../interp/pyenv/install.py', sha1='4a10a19717364b4ba9f3b8bf1d12621cf21ba8b8'),
|
|
150
150
|
dict(path='../interp/uv/provider.py', sha1='3c3980878ad2b9fd2cd02172f9424954759c7f06'),
|
|
151
|
-
dict(path='pkg.py', sha1='
|
|
151
|
+
dict(path='pkg.py', sha1='b2b63a3906d62e5911d2e5c0ee178041c53eff50'),
|
|
152
152
|
dict(path='../interp/providers/inject.py', sha1='7cc9ebf58cf2ec09545321456bd9da9f9a3a79fb'),
|
|
153
153
|
dict(path='../interp/pyenv/provider.py', sha1='377542ce01a35849e2a5b4a4dbafedc26882f983'),
|
|
154
154
|
dict(path='../interp/uv/inject.py', sha1='e95d058c2340baa5a3155ec3440f311d1daa10a8'),
|
|
@@ -2584,7 +2584,7 @@ class Checks:
|
|
|
2584
2584
|
...
|
|
2585
2585
|
|
|
2586
2586
|
def isinstance(self, v, spec, msg=None):
|
|
2587
|
-
if not isinstance(v, self._unpack_isinstance_spec(spec)):
|
|
2587
|
+
if not isinstance(v, spec if type(spec) is type else self._unpack_isinstance_spec(spec)):
|
|
2588
2588
|
self._raise(
|
|
2589
2589
|
TypeError,
|
|
2590
2590
|
'Must be instance',
|
|
@@ -2604,7 +2604,7 @@ class Checks:
|
|
|
2604
2604
|
...
|
|
2605
2605
|
|
|
2606
2606
|
def of_isinstance(self, spec, msg=None, /):
|
|
2607
|
-
spec = self._unpack_isinstance_spec(spec)
|
|
2607
|
+
spec = spec if type(spec) is type else self._unpack_isinstance_spec(spec)
|
|
2608
2608
|
|
|
2609
2609
|
def inner(v):
|
|
2610
2610
|
return self.isinstance(v, spec, msg)
|
|
@@ -2629,7 +2629,7 @@ class Checks:
|
|
|
2629
2629
|
return inner
|
|
2630
2630
|
|
|
2631
2631
|
def not_isinstance(self, v: T, spec: ta.Any, msg: CheckMessage = None, /) -> T: # noqa
|
|
2632
|
-
if isinstance(v, self._unpack_isinstance_spec(spec)):
|
|
2632
|
+
if isinstance(v, spec if type(spec) is type else self._unpack_isinstance_spec(spec)):
|
|
2633
2633
|
self._raise(
|
|
2634
2634
|
TypeError,
|
|
2635
2635
|
'Must not be instance',
|
|
@@ -2641,7 +2641,7 @@ class Checks:
|
|
|
2641
2641
|
return v
|
|
2642
2642
|
|
|
2643
2643
|
def of_not_isinstance(self, spec: ta.Any, msg: CheckMessage = None, /) -> ta.Callable[[T], T]:
|
|
2644
|
-
spec = self._unpack_isinstance_spec(spec)
|
|
2644
|
+
spec = spec if type(spec) is type else self._unpack_isinstance_spec(spec)
|
|
2645
2645
|
|
|
2646
2646
|
def inner(v):
|
|
2647
2647
|
return self.not_isinstance(v, spec, msg)
|
|
@@ -11785,28 +11785,59 @@ class BasePyprojectPackageGenerator(Abstract):
|
|
|
11785
11785
|
inc: ta.List[str]
|
|
11786
11786
|
exc: ta.List[str]
|
|
11787
11787
|
|
|
11788
|
+
_PKG_DATA_EXCLUDE_DIRS: ta.ClassVar[ta.AbstractSet[str]] = frozenset([
|
|
11789
|
+
'__pycache__',
|
|
11790
|
+
])
|
|
11791
|
+
|
|
11788
11792
|
@cached_nullary
|
|
11789
|
-
def _collect_pkg_data(self) -> _PkgData:
|
|
11790
|
-
|
|
11791
|
-
exc: ta.List[str] = []
|
|
11793
|
+
def _collect_pkg_data(self) -> ta.Mapping[str, _PkgData]:
|
|
11794
|
+
dct: ta.Dict[str, BasePyprojectPackageGenerator._PkgData] = {}
|
|
11792
11795
|
|
|
11793
11796
|
for p, ds, fs in os.walk(self._dir_name): # noqa
|
|
11794
11797
|
for f in fs:
|
|
11795
11798
|
if f != '.pkgdata':
|
|
11796
11799
|
continue
|
|
11797
|
-
|
|
11798
|
-
log.info('Found pkgdata %s
|
|
11800
|
+
|
|
11801
|
+
log.info('Found pkgdata %s', p)
|
|
11799
11802
|
with open(os.path.join(p, f)) as fo:
|
|
11800
11803
|
src = fo.read()
|
|
11804
|
+
|
|
11805
|
+
pn = p.replace(os.sep, '.')
|
|
11806
|
+
check.not_in(pn, dct)
|
|
11807
|
+
|
|
11808
|
+
inc: ta.List[str] = []
|
|
11809
|
+
exc: ta.List[str] = []
|
|
11810
|
+
|
|
11801
11811
|
for l in src.splitlines():
|
|
11802
11812
|
if not (l := l.strip()):
|
|
11803
11813
|
continue
|
|
11814
|
+
|
|
11804
11815
|
if (bang := l.startswith('!')):
|
|
11805
11816
|
l = l[1:]
|
|
11806
|
-
rlp = os.path.join(rp, l) if rp != '.' else l
|
|
11807
|
-
(exc if bang else inc).append(rlp)
|
|
11808
11817
|
|
|
11809
|
-
|
|
11818
|
+
if '**' in l:
|
|
11819
|
+
if bang:
|
|
11820
|
+
raise ValueError('Cannot exclude recursive globs')
|
|
11821
|
+
check.state(not l.endswith(os.sep))
|
|
11822
|
+
ge = l.rsplit(os.sep, maxsplit=1)[-1]
|
|
11823
|
+
|
|
11824
|
+
gds = set()
|
|
11825
|
+
for g in glob.glob(l, root_dir=p, recursive=True):
|
|
11826
|
+
if os.path.isfile(gp := os.path.join(p, g)):
|
|
11827
|
+
if any(gpp in self._PKG_DATA_EXCLUDE_DIRS for gpp in os.path.dirname(gp).split(os.sep)):
|
|
11828
|
+
continue
|
|
11829
|
+
gd = os.path.dirname(g)
|
|
11830
|
+
gds.add(gd)
|
|
11831
|
+
|
|
11832
|
+
for gd in sorted(gds):
|
|
11833
|
+
inc.append(os.path.join(gd, ge))
|
|
11834
|
+
|
|
11835
|
+
else:
|
|
11836
|
+
(exc if bang else inc).append(l)
|
|
11837
|
+
|
|
11838
|
+
dct[pn] = self._PkgData(inc, exc)
|
|
11839
|
+
|
|
11840
|
+
return dct
|
|
11810
11841
|
|
|
11811
11842
|
#
|
|
11812
11843
|
|
|
@@ -11988,10 +12019,12 @@ class PyprojectPackageGenerator(BasePyprojectPackageGenerator):
|
|
|
11988
12019
|
epd = dict(st.pop('exclude_package_data', {}))
|
|
11989
12020
|
|
|
11990
12021
|
cpd = self._collect_pkg_data()
|
|
11991
|
-
|
|
11992
|
-
|
|
11993
|
-
|
|
11994
|
-
|
|
12022
|
+
for pdk, pdv in cpd.items():
|
|
12023
|
+
pdl = TomlWriter.Literal(f"'{pdk}'")
|
|
12024
|
+
if pdv.inc:
|
|
12025
|
+
pd.setdefault(pdl, []).extend(sorted(set(pdv.inc)))
|
|
12026
|
+
if pdv.exc:
|
|
12027
|
+
pd.setdefault(pdl, []).extend(sorted(set(pdv.exc)))
|
|
11995
12028
|
|
|
11996
12029
|
if pd:
|
|
11997
12030
|
pyp_dct['tool.setuptools.package-data'] = pd
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: omdev
|
|
3
|
-
Version: 0.0.0.
|
|
3
|
+
Version: 0.0.0.dev534
|
|
4
4
|
Summary: omdev
|
|
5
5
|
Author: wrmsr
|
|
6
6
|
License-Expression: BSD-3-Clause
|
|
@@ -14,7 +14,7 @@ Classifier: Programming Language :: Python :: 3.13
|
|
|
14
14
|
Requires-Python: >=3.13
|
|
15
15
|
Description-Content-Type: text/markdown
|
|
16
16
|
License-File: LICENSE
|
|
17
|
-
Requires-Dist: omlish==0.0.0.
|
|
17
|
+
Requires-Dist: omlish==0.0.0.dev534
|
|
18
18
|
Provides-Extra: all
|
|
19
19
|
Requires-Dist: black~=26.1; extra == "all"
|
|
20
20
|
Requires-Dist: pycparser~=3.0; extra == "all"
|