omdev 0.0.0.dev535__tar.gz → 0.0.0.dev536__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.dev535/omdev.egg-info → omdev-0.0.0.dev536}/PKG-INFO +4 -4
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/__about__.py +1 -1
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/scripts/ci.py +2 -2
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/scripts/interp.py +2 -2
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/scripts/lib/io/streams.py +111 -74
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/scripts/lib/logs.py +2 -2
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/scripts/pyproject.py +2 -2
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/git/cli.py +1 -8
- omdev-0.0.0.dev536/omdev/tools/git/consts.py +15 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/textual/__init__.py +5 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536/omdev.egg-info}/PKG-INFO +4 -4
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev.egg-info/requires.txt +3 -3
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/pyproject.toml +4 -4
- omdev-0.0.0.dev535/omdev/tools/git/consts.py +0 -1
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/LICENSE +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/MANIFEST.in +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/README.md +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/.omlish-manifests.json +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/README.md +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/amalg/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/amalg/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/amalg/cli/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/amalg/cli/main.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/amalg/gen/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/amalg/gen/gen.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/amalg/gen/imports.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/amalg/gen/manifests.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/amalg/gen/resources.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/amalg/gen/srcfiles.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/amalg/gen/strip.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/amalg/gen/types.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/amalg/gen/typing.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/amalg/info.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/amalg/sources.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cache/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cache/compute/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cache/compute/cache.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cache/compute/contexts.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cache/compute/currents.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cache/compute/fns.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cache/compute/resolvers.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cache/compute/storage.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cache/compute/types.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cache/data/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cache/data/actions.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cache/data/cache.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cache/data/consts.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cache/data/defaults.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cache/data/manifests.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cache/data/specs.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/capi/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/capi/darwin/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/capi/darwin/aps.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/capi/darwin/ax.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/capi/darwin/cf.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/capi/darwin/cg.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/capi/linux/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/capi/linux/x11.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cc/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cc/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cc/cdeps.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cc/cdeps.toml +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cc/cli.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cc/srclangs.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/_boilerplate.cc +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/_distutils/LICENSE +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/_distutils/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/_distutils/build_ext.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/_distutils/compilers/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/_distutils/compilers/ccompiler.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/_distutils/compilers/options.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/_distutils/compilers/unixccompiler.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/_distutils/dir_util.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/_distutils/errors.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/_distutils/extension.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/_distutils/file_util.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/_distutils/modified.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/_distutils/spawn.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/_distutils/sysconfig.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/_distutils/util.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/_distutils/version.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/build.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/cmake.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/importhook.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/magic.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cexts/scan.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/cache.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/ci.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/cli.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/compose.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/consts.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/docker/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/docker/buildcaching.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/docker/cache.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/docker/cacheserved/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/docker/cacheserved/cache.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/docker/cacheserved/manifests.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/docker/cmds.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/docker/dataserver.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/docker/imagepulling.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/docker/inject.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/docker/packing.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/docker/repositories.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/docker/utils.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/github/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/github/api/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/github/api/clients.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/github/api/v1/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/github/api/v1/api.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/github/api/v1/client.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/github/api/v2/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/github/api/v2/api.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/github/api/v2/azure.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/github/api/v2/client.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/github/bootstrap.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/github/cache.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/github/cli.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/github/env.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/github/inject.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/inject.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/requirements.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/shell.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/ci/utils.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cli/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cli/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cli/_pathhack.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cli/clicli.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cli/install.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cli/main.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cli/managers.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cli/types.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/clipboard/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/clipboard/capi/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/clipboard/capi/darwin_cf.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/clipboard/capi/linux_x11.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/clipboard/commands.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/clipboard/platform.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/clipboard/types.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cmake.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cmdlog/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cmdlog/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cmdlog/_cmdlog.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cmdlog/cli.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/cmdlog/cmdlog.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dataclasses/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dataclasses/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dataclasses/_dumping.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dataclasses/_template.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dataclasses/cli.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dataclasses/codegen.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dataclasses/dumping.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dataserver/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dataserver/handlers.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dataserver/http.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dataserver/routes.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dataserver/server.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dataserver/targets.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/cli.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/config.toml +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/content.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/gen.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/helpers.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/ops.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/rendering.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/.python-versions.json +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/configs/.gdbinit +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/configs/.tmux.conf +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/configs/.vimrc +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/depsets/python.toml +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/depsets/system.toml +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/depsets/x11.toml +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/fragments/apt.sh +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/fragments/docker.sh +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/fragments/firefox.sh +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/fragments/go.sh +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/fragments/jdk.sh +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/fragments/nvm.sh +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/fragments/pyenv.sh +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/fragments/rust.sh +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/fragments/sshd.sh +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/fragments/uv.sh +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/fragments/vcpkg.sh +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/fragments/zig.sh +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/dockerdev/resources/xu +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/git/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/git/magic.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/git/revisions.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/git/shallow.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/git/status.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/home/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/home/paths.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/home/secrets.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/home/shadow.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/imgur.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/intellij/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/intellij/cli.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/intellij/ides.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/intellij/open.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/cli.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/default.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/inject.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/inspect.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/providers/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/providers/base.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/providers/inject.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/providers/running.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/providers/standalone.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/providers/system.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/pyenv/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/pyenv/inject.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/pyenv/install.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/pyenv/provider.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/pyenv/pyenv.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/resolvers.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/types.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/uv/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/uv/inject.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/uv/provider.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/uv/uv.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/interp/venvs.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/messages/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/messages/base.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/messages/formats.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/messages/messages.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/messages/parsing.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/numerics/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/numerics/formats.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/numerics/numerics.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/numerics/types.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/protocol/LICENSE +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/protocol/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/protocol/consts.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/protocol/errors.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/protocol/message.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/protocol/nuh.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/protocol/parsing.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/protocol/rendering.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/protocol/tags.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/irc/protocol/utils.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/java/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/java/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/java/cli.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/java/pomgen.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/java/xml.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/magic/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/magic/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/magic/cli.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/magic/find.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/magic/magic.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/magic/prepare.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/magic/styles.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/manifests/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/manifests/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/manifests/_dumping.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/manifests/building.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/manifests/dumping.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/manifests/main.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/markdown/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/markdown/incparse.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/markdown/tokens.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/mypy/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/mypy/debug.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/mypy/report.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/oci/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/oci/building.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/oci/compression.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/oci/data.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/oci/datarefs.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/oci/dataserver.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/oci/loading.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/oci/media.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/oci/pack/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/oci/pack/packing.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/oci/pack/repositories.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/oci/pack/unpacking.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/oci/repositories.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/oci/tars.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/packaging/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/packaging/marshal.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/packaging/names.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/packaging/requires.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/packaging/revisions.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/packaging/specifiers.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/packaging/versions.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/packaging/wheelfile.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/pip.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/precheck/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/precheck/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/precheck/base.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/precheck/blanklines.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/precheck/caches.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/precheck/git.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/precheck/imports.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/precheck/lite.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/precheck/main.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/precheck/manifests.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/precheck/scripts.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/precheck/unicode.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/asts/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/asts/parents.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/asts/toplevel.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/asts/visitors.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/attrdocs.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/bracepy.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/classdot.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/docstrings/LICENSE +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/docstrings/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/docstrings/attrdoc.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/docstrings/common.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/docstrings/epydoc.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/docstrings/google.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/docstrings/numpydoc.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/docstrings/parser.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/docstrings/rest.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/findimports.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/reprs.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/scripts/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/scripts/bumpversion.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/scripts/execstat.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/scripts/importtrace.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/srcheaders.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/tokens/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/tokens/all.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/tokens/tokenizert.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/tokens/utils.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/tools/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/tools/importscan.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/tools/mkrelimp.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/py/tools/pipdepup.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/pyproject/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/pyproject/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/pyproject/cli.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/pyproject/configs.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/pyproject/inject.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/pyproject/pkg.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/pyproject/reqs.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/pyproject/resources/dockerdev.sh +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/pyproject/resources/python.sh +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/pyproject/tools/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/pyproject/tools/aboutdeps.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/pyproject/tools/buildrs.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/pyproject/tools/pyversions.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/pyproject/venvs.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/pyproject/versions.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/rs/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/scripts/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/scripts/lib/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/scripts/lib/formats/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/scripts/lib/formats/goyaml.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/scripts/lib/inject.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/scripts/lib/io/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/scripts/lib/marshal.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/scripts/slowcat.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/scripts/tmpexec.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tagstrings.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/cloc.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/diff.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/doc.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/docker.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/git/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/git/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/git/cloning.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/git/messages.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/json/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/json/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/json/cli.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/json/formats.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/json/io.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/json/parsing.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/json/processing.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/json/rendering.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/jsonview/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/jsonview/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/jsonview/cli.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/jsonview/resources/jsonview.css +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/jsonview/resources/jsonview.html.j2 +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/jsonview/resources/jsonview.js +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/linehisto.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/mkenv.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/notebook.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/pawk/README.md +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/pawk/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/pawk/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/pawk/pawk.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/pip.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/prof.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/qr.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/shadow.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/shell.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tools/sqlrepl.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/apps/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/apps/edit/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/apps/edit/main.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/apps/irc/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/apps/irc/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/apps/irc/app.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/apps/irc/client.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/apps/irc/commands.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/apps/irc/main.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/apps/markdown/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/apps/markdown/__main__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/apps/markdown/cli.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/rich/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/rich/console2.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/rich/markdown2.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/textual/app2.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/textual/autocomplete/LICENSE +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/textual/autocomplete/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/textual/autocomplete/matching.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/textual/autocomplete/paths.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/textual/autocomplete/widget.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/textual/binding2.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/textual/clipboard.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/textual/debug/__init__.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/textual/debug/dominfo.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/textual/debug/screen.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/textual/devtools.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/textual/drivers2.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/textual/logging2.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/textual/screen2.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev/tui/textual/types.py +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev.egg-info/SOURCES.txt +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev.egg-info/dependency_links.txt +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev.egg-info/entry_points.txt +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/omdev.egg-info/top_level.txt +0 -0
- {omdev-0.0.0.dev535 → omdev-0.0.0.dev536}/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.dev536
|
|
4
4
|
Summary: omdev
|
|
5
5
|
Author: wrmsr
|
|
6
6
|
License-Expression: BSD-3-Clause
|
|
@@ -14,9 +14,9 @@ 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.dev536
|
|
18
18
|
Provides-Extra: all
|
|
19
|
-
Requires-Dist: black~=26.
|
|
19
|
+
Requires-Dist: black~=26.3; extra == "all"
|
|
20
20
|
Requires-Dist: pycparser~=3.0; extra == "all"
|
|
21
21
|
Requires-Dist: pcpp~=1.30; extra == "all"
|
|
22
22
|
Requires-Dist: docutils~=0.22; extra == "all"
|
|
@@ -31,7 +31,7 @@ Requires-Dist: textual~=8.0; extra == "all"
|
|
|
31
31
|
Requires-Dist: textual-dev~=1.8; extra == "all"
|
|
32
32
|
Requires-Dist: textual-speedups~=0.2; extra == "all"
|
|
33
33
|
Provides-Extra: black
|
|
34
|
-
Requires-Dist: black~=26.
|
|
34
|
+
Requires-Dist: black~=26.3; extra == "black"
|
|
35
35
|
Provides-Extra: c
|
|
36
36
|
Requires-Dist: pycparser~=3.0; extra == "c"
|
|
37
37
|
Requires-Dist: pcpp~=1.30; extra == "c"
|
|
@@ -149,7 +149,7 @@ def __omlish_amalg__(): # noqa
|
|
|
149
149
|
dict(path='../../omlish/http/handlers.py', sha1='2b97d76b8e2e507b5c5b6a241d077c00960ee638'),
|
|
150
150
|
dict(path='../../omlish/lite/inject.py', sha1='6f097e3170019a34ff6834d36fcc9cbeed3a7ab4'),
|
|
151
151
|
dict(path='../../omlish/logs/contexts.py', sha1='1000a6d5ddfb642865ca532e34b1d50759781cf0'),
|
|
152
|
-
dict(path='../../omlish/logs/std/standard.py', sha1='
|
|
152
|
+
dict(path='../../omlish/logs/std/standard.py', sha1='472f1f0623d6bcd301612551432afa7e3a661a34'),
|
|
153
153
|
dict(path='../../omlish/logs/utils.py', sha1='9b879044cbdc3172fd7282c7f2a4880b81261cdd'),
|
|
154
154
|
dict(path='../../omlish/sockets/server/handlers.py', sha1='6f9adca9fa04774a28a488a4e2a11bb4492c71d0'),
|
|
155
155
|
dict(path='../../omlish/subprocesses/run.py', sha1='8200e48f0c49d164df3503cd0143038d0c4d30aa'),
|
|
@@ -11528,7 +11528,7 @@ def configure_standard_logging(
|
|
|
11528
11528
|
#
|
|
11529
11529
|
|
|
11530
11530
|
if level is not None:
|
|
11531
|
-
target.setLevel(level)
|
|
11531
|
+
target.setLevel(level.upper() if isinstance(level, str) else level)
|
|
11532
11532
|
|
|
11533
11533
|
#
|
|
11534
11534
|
|
|
@@ -74,7 +74,7 @@ def __omlish_amalg__(): # noqa
|
|
|
74
74
|
dict(path='types.py', sha1='caf068a6e81fb6e221d777b341ac5777d92b8091'),
|
|
75
75
|
dict(path='../../omlish/asyncs/asyncio/timeouts.py', sha1='4d31b02b3c39b8f2fa7e94db36552fde6942e36a'),
|
|
76
76
|
dict(path='../../omlish/lite/inject.py', sha1='6f097e3170019a34ff6834d36fcc9cbeed3a7ab4'),
|
|
77
|
-
dict(path='../../omlish/logs/std/standard.py', sha1='
|
|
77
|
+
dict(path='../../omlish/logs/std/standard.py', sha1='472f1f0623d6bcd301612551432afa7e3a661a34'),
|
|
78
78
|
dict(path='../../omlish/subprocesses/run.py', sha1='8200e48f0c49d164df3503cd0143038d0c4d30aa'),
|
|
79
79
|
dict(path='../../omlish/subprocesses/wrap.py', sha1='8a9b7d2255481fae15c05f5624b0cdc0766f4b3f'),
|
|
80
80
|
dict(path='providers/base.py', sha1='f5d068c21f230d742e9015b033cd6320f4c68898'),
|
|
@@ -4647,7 +4647,7 @@ def configure_standard_logging(
|
|
|
4647
4647
|
#
|
|
4648
4648
|
|
|
4649
4649
|
if level is not None:
|
|
4650
|
-
target.setLevel(level)
|
|
4650
|
+
target.setLevel(level.upper() if isinstance(level, str) else level)
|
|
4651
4651
|
|
|
4652
4652
|
#
|
|
4653
4653
|
|
|
@@ -26,16 +26,16 @@ def __omlish_amalg__(): # noqa
|
|
|
26
26
|
dict(path='errors.py', sha1='67ca85fd8741b5bfefe76c872ce1c30c18fab06f'),
|
|
27
27
|
dict(path='../../lite/abstract.py', sha1='a2fc3f3697fa8de5247761e9d554e70176f37aac'),
|
|
28
28
|
dict(path='../../lite/namespaces.py', sha1='27b12b6592403c010fb8b2a0af7c24238490d3a1'),
|
|
29
|
-
dict(path='types.py', sha1='
|
|
29
|
+
dict(path='types.py', sha1='8959d244de95eaf9f118cc3fd2d713d85e55ff36'),
|
|
30
30
|
dict(path='base.py', sha1='bdeaff419684dec34fd0dc59808a9686131992bc'),
|
|
31
31
|
dict(path='framing.py', sha1='dc2d7f638b042619fd3d95789c71532a29fd5fe4'),
|
|
32
32
|
dict(path='reading.py', sha1='7631635c46ab4b40bcaeb7c506cf15cb2d529a40'),
|
|
33
|
-
dict(path='utils.py', sha1='
|
|
34
|
-
dict(path='direct.py', sha1='
|
|
35
|
-
dict(path='scanning.py', sha1='
|
|
36
|
-
dict(path='adapters.py', sha1='
|
|
37
|
-
dict(path='linear.py', sha1='
|
|
38
|
-
dict(path='segmented.py', sha1='
|
|
33
|
+
dict(path='utils.py', sha1='eb08fa1d56284b078f973eea6796747b9bbdffdf'),
|
|
34
|
+
dict(path='direct.py', sha1='b01937212493e9a41644ac4e366e4cbab10332ce'),
|
|
35
|
+
dict(path='scanning.py', sha1='00522802dff772689be66151430754d4f9706dbc'),
|
|
36
|
+
dict(path='adapters.py', sha1='f38f33ef312c68ecda06ddee928e679fc86bd49e'),
|
|
37
|
+
dict(path='linear.py', sha1='82d8d806abd708e8d471f32cb49813be150bcf6a'),
|
|
38
|
+
dict(path='segmented.py', sha1='025cdf30e582a5a2b923e1859fbb4d3f367b811c'),
|
|
39
39
|
dict(path='_amalg.py', sha1='9c88a055447d7b37da1b356e6a1e00b7c4a9a3cb'),
|
|
40
40
|
],
|
|
41
41
|
)
|
|
@@ -48,10 +48,10 @@ def __omlish_amalg__(): # noqa
|
|
|
48
48
|
T = ta.TypeVar('T')
|
|
49
49
|
|
|
50
50
|
# types.py
|
|
51
|
-
|
|
51
|
+
BytesLike = ta.Union[bytes, bytearray, memoryview] # ta.TypeAlias
|
|
52
52
|
|
|
53
53
|
# utils.py
|
|
54
|
-
CanByteStreamBuffer = ta.Union[
|
|
54
|
+
CanByteStreamBuffer = ta.Union[BytesLike, 'ByteStreamBufferLike'] # ta.TypeAlias
|
|
55
55
|
|
|
56
56
|
|
|
57
57
|
########################################
|
|
@@ -501,7 +501,7 @@ class MutableByteStreamBuffer(ByteStreamBuffer, Abstract):
|
|
|
501
501
|
raise NotImplementedError
|
|
502
502
|
|
|
503
503
|
@abc.abstractmethod
|
|
504
|
-
def write(self, data:
|
|
504
|
+
def write(self, data: BytesLike, /) -> None:
|
|
505
505
|
"""
|
|
506
506
|
Append `data` to the end of the readable region (after any existing unread bytes).
|
|
507
507
|
|
|
@@ -1045,22 +1045,23 @@ class ByteStreamBufferReader:
|
|
|
1045
1045
|
|
|
1046
1046
|
|
|
1047
1047
|
class ByteStreamBuffers(NamespaceClass):
|
|
1048
|
-
|
|
1049
|
-
def memoryview_to_bytes(mv: memoryview, /) -> bytes:
|
|
1050
|
-
if (((ot := type(obj := mv.obj)) is bytes or ot is bytearray or isinstance(obj, (bytes, bytearray))) and len(mv) == len(obj)): # type: ignore[arg-type] # noqa
|
|
1051
|
-
return obj # type: ignore[return-value]
|
|
1052
|
-
|
|
1053
|
-
return mv.tobytes()
|
|
1054
|
-
|
|
1055
|
-
##
|
|
1056
|
-
|
|
1057
|
-
_CAN_CONVERT_TYPES: ta.ClassVar[ta.Tuple[type, ...]] = (
|
|
1048
|
+
_BYTES_TYPES: ta.ClassVar[ta.Tuple[type, ...]] = (
|
|
1058
1049
|
bytes,
|
|
1059
1050
|
bytearray,
|
|
1051
|
+
)
|
|
1052
|
+
|
|
1053
|
+
_BYTES_LIKE_TYPES: ta.ClassVar[ta.Tuple[type, ...]] = (
|
|
1054
|
+
*_BYTES_TYPES,
|
|
1060
1055
|
memoryview,
|
|
1056
|
+
)
|
|
1057
|
+
|
|
1058
|
+
_CAN_CONVERT_TYPES: ta.ClassVar[ta.Tuple[type, ...]] = (
|
|
1059
|
+
*_BYTES_LIKE_TYPES,
|
|
1061
1060
|
ByteStreamBufferLike,
|
|
1062
1061
|
)
|
|
1063
1062
|
|
|
1063
|
+
#
|
|
1064
|
+
|
|
1064
1065
|
@classmethod
|
|
1065
1066
|
def can_bytes(cls, obj: ta.Any, /) -> bool:
|
|
1066
1067
|
return type(obj) in (cts := cls._CAN_CONVERT_TYPES) or isinstance(obj, cts)
|
|
@@ -1069,77 +1070,89 @@ class ByteStreamBuffers(NamespaceClass):
|
|
|
1069
1070
|
|
|
1070
1071
|
@classmethod
|
|
1071
1072
|
@ta.overload
|
|
1072
|
-
def
|
|
1073
|
+
def to_bytes(
|
|
1074
|
+
cls,
|
|
1075
|
+
obj: ta.Any,
|
|
1076
|
+
/, *,
|
|
1077
|
+
strict: ta.Literal[True],
|
|
1078
|
+
or_none: ta.Literal[True],
|
|
1079
|
+
) -> ta.Optional[bytes]:
|
|
1073
1080
|
...
|
|
1074
1081
|
|
|
1075
1082
|
@classmethod
|
|
1076
1083
|
@ta.overload
|
|
1077
|
-
def
|
|
1084
|
+
def to_bytes(
|
|
1085
|
+
cls,
|
|
1086
|
+
obj: ta.Any,
|
|
1087
|
+
/, *,
|
|
1088
|
+
strict: ta.Literal[True],
|
|
1089
|
+
or_none: ta.Literal[False] = False,
|
|
1090
|
+
) -> bytes:
|
|
1078
1091
|
...
|
|
1079
1092
|
|
|
1080
|
-
@classmethod
|
|
1081
|
-
def buffer_to_bytes(cls, obj, or_none=False, /):
|
|
1082
|
-
if type(obj) is memoryview or isinstance(obj, memoryview):
|
|
1083
|
-
return cls.memoryview_to_bytes(obj)
|
|
1084
|
-
|
|
1085
|
-
elif isinstance(obj, ByteStreamBufferView):
|
|
1086
|
-
return obj.tobytes()
|
|
1087
|
-
|
|
1088
|
-
elif isinstance(obj, ByteStreamBufferLike):
|
|
1089
|
-
return b''.join(bytes(mv) for mv in obj.segments())
|
|
1090
|
-
|
|
1091
|
-
elif or_none:
|
|
1092
|
-
return None
|
|
1093
|
-
|
|
1094
|
-
else:
|
|
1095
|
-
raise TypeError(obj)
|
|
1096
|
-
|
|
1097
|
-
#
|
|
1098
|
-
|
|
1099
1093
|
@classmethod
|
|
1100
1094
|
@ta.overload
|
|
1101
|
-
def
|
|
1095
|
+
def to_bytes(
|
|
1096
|
+
cls,
|
|
1097
|
+
obj: ta.Any,
|
|
1098
|
+
/, *,
|
|
1099
|
+
strict: ta.Literal[False] = False,
|
|
1100
|
+
or_none: ta.Literal[True],
|
|
1101
|
+
) -> ta.Union[bytes, bytearray, None]:
|
|
1102
1102
|
...
|
|
1103
1103
|
|
|
1104
1104
|
@classmethod
|
|
1105
1105
|
@ta.overload
|
|
1106
|
-
def
|
|
1106
|
+
def to_bytes(
|
|
1107
|
+
cls,
|
|
1108
|
+
obj: ta.Any,
|
|
1109
|
+
/, *,
|
|
1110
|
+
strict: ta.Literal[False] = False,
|
|
1111
|
+
or_none: ta.Literal[False] = False,
|
|
1112
|
+
) -> ta.Union[bytes, bytearray]:
|
|
1107
1113
|
...
|
|
1108
1114
|
|
|
1109
1115
|
@classmethod
|
|
1110
|
-
def
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1116
|
+
def to_bytes(
|
|
1117
|
+
cls,
|
|
1118
|
+
obj,
|
|
1119
|
+
/, *,
|
|
1120
|
+
strict=False,
|
|
1121
|
+
or_none=False,
|
|
1122
|
+
):
|
|
1123
|
+
"""
|
|
1124
|
+
Returns a non-shared version of the given object. If a possibly shared memoryview is acceptable, use
|
|
1125
|
+
`iter_segments`.
|
|
1126
|
+
"""
|
|
1127
|
+
|
|
1128
|
+
if strict:
|
|
1129
|
+
if (ot := type(obj)) is bytes or isinstance(obj, bytes):
|
|
1130
|
+
return obj
|
|
1131
|
+
|
|
1132
|
+
elif ot is bytearray:
|
|
1133
|
+
return bytes(obj)
|
|
1115
1134
|
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
elif isinstance(obj, bytearray):
|
|
1119
|
-
return bytes(obj)
|
|
1135
|
+
elif isinstance(obj, memoryview):
|
|
1136
|
+
return cls.memoryview_to_bytes_strict(obj)
|
|
1120
1137
|
|
|
1121
1138
|
else:
|
|
1122
|
-
|
|
1139
|
+
if (ot := type(obj)) is bytes or ot is bytearray or isinstance(obj, cls._BYTES_TYPES):
|
|
1140
|
+
return obj
|
|
1123
1141
|
|
|
1124
|
-
|
|
1142
|
+
elif isinstance(obj, memoryview):
|
|
1143
|
+
return cls.memoryview_to_bytes(obj)
|
|
1125
1144
|
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
def any_to_bytes_or_bytearray(cls, obj: ta.Any, or_none: ta.Literal[True], /) -> ta.Union[bytes, bytearray, None]:
|
|
1129
|
-
...
|
|
1145
|
+
if isinstance(obj, ByteStreamBufferView):
|
|
1146
|
+
return obj.tobytes()
|
|
1130
1147
|
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
def any_to_bytes_or_bytearray(cls, obj: ta.Any, or_none: ta.Literal[False] = False, /) -> ta.Union[bytes, bytearray]: # noqa
|
|
1134
|
-
...
|
|
1148
|
+
elif isinstance(obj, ByteStreamBufferLike):
|
|
1149
|
+
return b''.join(bytes(mv) for mv in obj.segments())
|
|
1135
1150
|
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
if (ot := type(obj)) is bytes or ot is bytearray or isinstance(obj, (bytes, bytearray)):
|
|
1139
|
-
return obj
|
|
1151
|
+
elif or_none:
|
|
1152
|
+
return None
|
|
1140
1153
|
|
|
1141
1154
|
else:
|
|
1142
|
-
|
|
1155
|
+
raise TypeError(obj)
|
|
1143
1156
|
|
|
1144
1157
|
#
|
|
1145
1158
|
|
|
@@ -1164,7 +1177,7 @@ class ByteStreamBuffers(NamespaceClass):
|
|
|
1164
1177
|
else:
|
|
1165
1178
|
raise TypeError(obj)
|
|
1166
1179
|
|
|
1167
|
-
|
|
1180
|
+
#
|
|
1168
1181
|
|
|
1169
1182
|
@staticmethod
|
|
1170
1183
|
def iter_segments(obj: ta.Any, /) -> ta.Iterator[memoryview]:
|
|
@@ -1184,6 +1197,8 @@ class ByteStreamBuffers(NamespaceClass):
|
|
|
1184
1197
|
else:
|
|
1185
1198
|
raise TypeError(obj)
|
|
1186
1199
|
|
|
1200
|
+
#
|
|
1201
|
+
|
|
1187
1202
|
@staticmethod
|
|
1188
1203
|
def split(buf: ByteStreamBuffer, sep: bytes, /, *, final: bool = False) -> ta.List[ByteStreamBufferView]:
|
|
1189
1204
|
out: ta.List[ByteStreamBufferView] = []
|
|
@@ -1193,6 +1208,22 @@ class ByteStreamBuffers(NamespaceClass):
|
|
|
1193
1208
|
out.append(buf.split_to(len(buf)))
|
|
1194
1209
|
return out
|
|
1195
1210
|
|
|
1211
|
+
#
|
|
1212
|
+
|
|
1213
|
+
@classmethod
|
|
1214
|
+
def memoryview_to_bytes(cls, mv: memoryview, /) -> ta.Union[bytes, bytearray]:
|
|
1215
|
+
if (((ot := type(obj := mv.obj)) is bytes or ot is bytearray or isinstance(obj, cls._BYTES_TYPES)) and len(mv) == len(obj)): # type: ignore[arg-type] # noqa
|
|
1216
|
+
return obj # type: ignore[return-value]
|
|
1217
|
+
|
|
1218
|
+
return mv.tobytes()
|
|
1219
|
+
|
|
1220
|
+
@staticmethod
|
|
1221
|
+
def memoryview_to_bytes_strict(mv: memoryview, /) -> bytes:
|
|
1222
|
+
if (((ot := type(obj := mv.obj)) is bytes or isinstance(obj, bytes)) and len(mv) == len(obj)): # type: ignore[arg-type] # noqa
|
|
1223
|
+
return obj # type: ignore[return-value]
|
|
1224
|
+
|
|
1225
|
+
return mv.tobytes()
|
|
1226
|
+
|
|
1196
1227
|
|
|
1197
1228
|
########################################
|
|
1198
1229
|
# ../direct.py
|
|
@@ -1202,7 +1233,7 @@ class ByteStreamBuffers(NamespaceClass):
|
|
|
1202
1233
|
|
|
1203
1234
|
|
|
1204
1235
|
class BaseDirectByteStreamBufferLike(BaseByteStreamBufferLike, Abstract):
|
|
1205
|
-
def __init__(self, data:
|
|
1236
|
+
def __init__(self, data: BytesLike) -> None:
|
|
1206
1237
|
super().__init__()
|
|
1207
1238
|
|
|
1208
1239
|
self._data = data
|
|
@@ -1282,7 +1313,7 @@ class DirectByteStreamBuffer(BaseDirectByteStreamBufferLike, ByteStreamBuffer):
|
|
|
1282
1313
|
b'GET /path HTTP/1.1\\r\\nHost: example.com'
|
|
1283
1314
|
"""
|
|
1284
1315
|
|
|
1285
|
-
def __init__(self, data:
|
|
1316
|
+
def __init__(self, data: BytesLike) -> None:
|
|
1286
1317
|
super().__init__(data)
|
|
1287
1318
|
|
|
1288
1319
|
self._rpos = 0
|
|
@@ -1448,7 +1479,7 @@ class ScanningByteStreamBuffer(BaseByteStreamBufferLike, MutableByteStreamBuffer
|
|
|
1448
1479
|
|
|
1449
1480
|
#
|
|
1450
1481
|
|
|
1451
|
-
def write(self, data:
|
|
1482
|
+
def write(self, data: BytesLike, /) -> None:
|
|
1452
1483
|
self._buf.write(data)
|
|
1453
1484
|
|
|
1454
1485
|
def reserve(self, n: int, /) -> memoryview:
|
|
@@ -1701,7 +1732,7 @@ class BytesIoByteStreamBuffer(MutableByteStreamBuffer):
|
|
|
1701
1732
|
self._rpos += n
|
|
1702
1733
|
return DirectByteStreamBufferView(out)
|
|
1703
1734
|
|
|
1704
|
-
def write(self, data:
|
|
1735
|
+
def write(self, data: BytesLike, /) -> None:
|
|
1705
1736
|
if not data:
|
|
1706
1737
|
return
|
|
1707
1738
|
if isinstance(data, memoryview):
|
|
@@ -1854,7 +1885,7 @@ class LinearByteStreamBuffer(BaseByteStreamBufferLike, MutableByteStreamBuffer):
|
|
|
1854
1885
|
if self._resv_start is not None:
|
|
1855
1886
|
raise OutstandingReserveByteStreamBufferError('outstanding reserve')
|
|
1856
1887
|
|
|
1857
|
-
def write(self, data:
|
|
1888
|
+
def write(self, data: BytesLike, /) -> None:
|
|
1858
1889
|
self._check_no_reserve()
|
|
1859
1890
|
if not data:
|
|
1860
1891
|
return
|
|
@@ -2088,6 +2119,12 @@ class SegmentedByteStreamBufferView(BaseByteStreamBufferLike, ByteStreamBufferVi
|
|
|
2088
2119
|
return None
|
|
2089
2120
|
return cls(segs)
|
|
2090
2121
|
|
|
2122
|
+
@classmethod
|
|
2123
|
+
def or_else(cls, segs: ta.Sequence[memoryview], default: T) -> ta.Union['SegmentedByteStreamBufferView', T]:
|
|
2124
|
+
if not segs:
|
|
2125
|
+
return default
|
|
2126
|
+
return cls(segs)
|
|
2127
|
+
|
|
2091
2128
|
_len = 0
|
|
2092
2129
|
|
|
2093
2130
|
def __len__(self) -> int:
|
|
@@ -2286,7 +2323,7 @@ class SegmentedByteStreamBuffer(BaseByteStreamBufferLike, MutableByteStreamBuffe
|
|
|
2286
2323
|
self._active = None
|
|
2287
2324
|
self._active_used = 0
|
|
2288
2325
|
|
|
2289
|
-
def write(self, data:
|
|
2326
|
+
def write(self, data: BytesLike, /) -> None:
|
|
2290
2327
|
if not data:
|
|
2291
2328
|
return
|
|
2292
2329
|
if isinstance(data, memoryview):
|
|
@@ -43,7 +43,7 @@ def __omlish_amalg__(): # noqa
|
|
|
43
43
|
dict(path='metrics/base.py', sha1='95120732c745ceec5333f81553761ab6ff4bb3fb'),
|
|
44
44
|
dict(path='std/json.py', sha1='2a75553131e4d5331bb0cedde42aa183f403fc3b'),
|
|
45
45
|
dict(path='contexts.py', sha1='1000a6d5ddfb642865ca532e34b1d50759781cf0'),
|
|
46
|
-
dict(path='std/standard.py', sha1='
|
|
46
|
+
dict(path='std/standard.py', sha1='472f1f0623d6bcd301612551432afa7e3a661a34'),
|
|
47
47
|
dict(path='base.py', sha1='eaa2ce213235815e2f86c50df6c41cfe26a43ba2'),
|
|
48
48
|
dict(path='std/records.py', sha1='67e552537d9268d4df6939b8a92be885fda35238'),
|
|
49
49
|
dict(path='std/loggers.py', sha1='dbdfc66188e6accb75d03454e43221d3fba0f011'),
|
|
@@ -1355,7 +1355,7 @@ def configure_standard_logging(
|
|
|
1355
1355
|
#
|
|
1356
1356
|
|
|
1357
1357
|
if level is not None:
|
|
1358
|
-
target.setLevel(level)
|
|
1358
|
+
target.setLevel(level.upper() if isinstance(level, str) else level)
|
|
1359
1359
|
|
|
1360
1360
|
#
|
|
1361
1361
|
|
|
@@ -124,7 +124,7 @@ def __omlish_amalg__(): # noqa
|
|
|
124
124
|
dict(path='../../omlish/asyncs/asyncio/timeouts.py', sha1='4d31b02b3c39b8f2fa7e94db36552fde6942e36a'),
|
|
125
125
|
dict(path='../../omlish/lite/inject.py', sha1='6f097e3170019a34ff6834d36fcc9cbeed3a7ab4'),
|
|
126
126
|
dict(path='../../omlish/logs/contexts.py', sha1='1000a6d5ddfb642865ca532e34b1d50759781cf0'),
|
|
127
|
-
dict(path='../../omlish/logs/std/standard.py', sha1='
|
|
127
|
+
dict(path='../../omlish/logs/std/standard.py', sha1='472f1f0623d6bcd301612551432afa7e3a661a34'),
|
|
128
128
|
dict(path='../../omlish/subprocesses/run.py', sha1='8200e48f0c49d164df3503cd0143038d0c4d30aa'),
|
|
129
129
|
dict(path='../../omlish/subprocesses/wrap.py', sha1='8a9b7d2255481fae15c05f5624b0cdc0766f4b3f'),
|
|
130
130
|
dict(path='../interp/providers/base.py', sha1='f5d068c21f230d742e9015b033cd6320f4c68898'),
|
|
@@ -8558,7 +8558,7 @@ def configure_standard_logging(
|
|
|
8558
8558
|
#
|
|
8559
8559
|
|
|
8560
8560
|
if level is not None:
|
|
8561
|
-
target.setLevel(level)
|
|
8561
|
+
target.setLevel(level.upper() if isinstance(level, str) else level)
|
|
8562
8562
|
|
|
8563
8563
|
#
|
|
8564
8564
|
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
# ruff: noqa: UP006 UP007 UP045
|
|
2
|
-
# @omlish-precheck-allow-any-unicode
|
|
3
2
|
"""
|
|
4
3
|
TODO:
|
|
5
4
|
- Handle:
|
|
@@ -480,12 +479,6 @@ class Cli(ap.Cli):
|
|
|
480
479
|
|
|
481
480
|
#
|
|
482
481
|
|
|
483
|
-
BUILTIN_COMMIT_MESSAGES: ta.Mapping[str, str] = {
|
|
484
|
-
'tableflip': '(╯°□°)╯︵ ┻━┻',
|
|
485
|
-
'tableunflip': '┬─┬ノ(º _ ºノ)',
|
|
486
|
-
'shrug': r'¯\_(ツ)_/¯',
|
|
487
|
-
}
|
|
488
|
-
|
|
489
482
|
@ap.cmd(
|
|
490
483
|
ap.arg('-M', '--builtin-message', nargs='?'),
|
|
491
484
|
accepts_unknown=True,
|
|
@@ -494,7 +487,7 @@ class Cli(ap.Cli):
|
|
|
494
487
|
args: list[str] = []
|
|
495
488
|
|
|
496
489
|
if (bim := self.args.builtin_message) is not None:
|
|
497
|
-
args.extend(['-m',
|
|
490
|
+
args.extend(['-m', consts.BUILTIN_COMMIT_MESSAGES[bim]])
|
|
498
491
|
|
|
499
492
|
subprocesses.check_call(
|
|
500
493
|
'git',
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# @omlish-precheck-allow-any-unicode
|
|
2
|
+
import typing as ta
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
##
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
DEFAULT_TIME_FMT = '%Y-%m-%dT%H:%M:%SZ'
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
BUILTIN_COMMIT_MESSAGES: ta.Mapping[str, str] = {
|
|
12
|
+
'tableflip': '(╯°□°)╯︵ ┻━┻',
|
|
13
|
+
'tableunflip': '┬─┬ノ(º _ ºノ)',
|
|
14
|
+
'shrug': r'¯\_(ツ)_/¯',
|
|
15
|
+
}
|
|
@@ -171,6 +171,7 @@ with _lang.auto_proxy_init(globals()):
|
|
|
171
171
|
from textual.suggestions import get_suggestions # noqa
|
|
172
172
|
from textual.timer import Timer # noqa
|
|
173
173
|
from textual.timer import TimerCallback # noqa
|
|
174
|
+
from textual.visual import VisualType # noqa
|
|
174
175
|
from textual.widget import Widget # noqa
|
|
175
176
|
from textual.widgets import Button # noqa
|
|
176
177
|
from textual.widgets import Checkbox # noqa
|
|
@@ -231,6 +232,10 @@ with _lang.auto_proxy_init(globals()):
|
|
|
231
232
|
|
|
232
233
|
##
|
|
233
234
|
|
|
235
|
+
from rich.text import Text # noqa
|
|
236
|
+
|
|
237
|
+
##
|
|
238
|
+
|
|
234
239
|
from .app2 import ( # noqa
|
|
235
240
|
App,
|
|
236
241
|
)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: omdev
|
|
3
|
-
Version: 0.0.0.
|
|
3
|
+
Version: 0.0.0.dev536
|
|
4
4
|
Summary: omdev
|
|
5
5
|
Author: wrmsr
|
|
6
6
|
License-Expression: BSD-3-Clause
|
|
@@ -14,9 +14,9 @@ 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.dev536
|
|
18
18
|
Provides-Extra: all
|
|
19
|
-
Requires-Dist: black~=26.
|
|
19
|
+
Requires-Dist: black~=26.3; extra == "all"
|
|
20
20
|
Requires-Dist: pycparser~=3.0; extra == "all"
|
|
21
21
|
Requires-Dist: pcpp~=1.30; extra == "all"
|
|
22
22
|
Requires-Dist: docutils~=0.22; extra == "all"
|
|
@@ -31,7 +31,7 @@ Requires-Dist: textual~=8.0; extra == "all"
|
|
|
31
31
|
Requires-Dist: textual-dev~=1.8; extra == "all"
|
|
32
32
|
Requires-Dist: textual-speedups~=0.2; extra == "all"
|
|
33
33
|
Provides-Extra: black
|
|
34
|
-
Requires-Dist: black~=26.
|
|
34
|
+
Requires-Dist: black~=26.3; extra == "black"
|
|
35
35
|
Provides-Extra: c
|
|
36
36
|
Requires-Dist: pycparser~=3.0; extra == "c"
|
|
37
37
|
Requires-Dist: pcpp~=1.30; extra == "c"
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
omlish==0.0.0.
|
|
1
|
+
omlish==0.0.0.dev536
|
|
2
2
|
|
|
3
3
|
[all]
|
|
4
|
-
black~=26.
|
|
4
|
+
black~=26.3
|
|
5
5
|
pycparser~=3.0
|
|
6
6
|
pcpp~=1.30
|
|
7
7
|
docutils~=0.22
|
|
@@ -17,7 +17,7 @@ textual-dev~=1.8
|
|
|
17
17
|
textual-speedups~=0.2
|
|
18
18
|
|
|
19
19
|
[black]
|
|
20
|
-
black~=26.
|
|
20
|
+
black~=26.3
|
|
21
21
|
|
|
22
22
|
[c]
|
|
23
23
|
pycparser~=3.0
|
|
@@ -13,7 +13,7 @@ urls = {source = 'https://github.com/wrmsr/omlish'}
|
|
|
13
13
|
license = 'BSD-3-Clause'
|
|
14
14
|
readme = 'README.md'
|
|
15
15
|
requires-python = '>=3.13'
|
|
16
|
-
version = '0.0.0.
|
|
16
|
+
version = '0.0.0.dev536'
|
|
17
17
|
classifiers = [
|
|
18
18
|
'Development Status :: 2 - Pre-Alpha',
|
|
19
19
|
'Intended Audience :: Developers',
|
|
@@ -24,12 +24,12 @@ classifiers = [
|
|
|
24
24
|
]
|
|
25
25
|
description = 'omdev'
|
|
26
26
|
dependencies = [
|
|
27
|
-
'omlish == 0.0.0.
|
|
27
|
+
'omlish == 0.0.0.dev536',
|
|
28
28
|
]
|
|
29
29
|
|
|
30
30
|
[project.optional-dependencies]
|
|
31
31
|
all = [
|
|
32
|
-
'black ~= 26.
|
|
32
|
+
'black ~= 26.3',
|
|
33
33
|
'pycparser ~= 3.0',
|
|
34
34
|
'pcpp ~= 1.30',
|
|
35
35
|
'docutils ~= 0.22',
|
|
@@ -45,7 +45,7 @@ all = [
|
|
|
45
45
|
'textual-speedups ~= 0.2',
|
|
46
46
|
]
|
|
47
47
|
black = [
|
|
48
|
-
'black ~= 26.
|
|
48
|
+
'black ~= 26.3',
|
|
49
49
|
]
|
|
50
50
|
c = [
|
|
51
51
|
'pycparser ~= 3.0',
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
DEFAULT_TIME_FMT = '%Y-%m-%dT%H:%M:%SZ'
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|