omdev 0.0.0.dev481__tar.gz → 0.0.0.dev482__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.dev481/omdev.egg-info → omdev-0.0.0.dev482}/PKG-INFO +2 -2
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/dataclasses/_dumping.py +6 -3
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/dataclasses/_template.py +2 -2
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/dataclasses/codegen.py +90 -7
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/dataclasses/dumping.py +5 -2
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482/omdev.egg-info}/PKG-INFO +2 -2
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev.egg-info/requires.txt +1 -1
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/pyproject.toml +2 -2
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/LICENSE +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/MANIFEST.in +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/README.md +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/.omlish-manifests.json +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/__about__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/amalg/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/amalg/__main__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/amalg/cli/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/amalg/cli/main.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/amalg/gen/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/amalg/gen/gen.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/amalg/gen/imports.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/amalg/gen/manifests.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/amalg/gen/resources.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/amalg/gen/srcfiles.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/amalg/gen/strip.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/amalg/gen/types.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/amalg/gen/typing.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/amalg/info.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/amalg/sources.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cache/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cache/compute/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cache/compute/cache.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cache/compute/contexts.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cache/compute/currents.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cache/compute/fns.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cache/compute/resolvers.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cache/compute/storage.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cache/compute/types.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cache/data/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cache/data/actions.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cache/data/cache.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cache/data/consts.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cache/data/defaults.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cache/data/manifests.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cache/data/specs.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/capi/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/capi/darwin/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/capi/darwin/aps.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/capi/darwin/ax.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/capi/darwin/cf.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/capi/darwin/cg.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/capi/linux/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/capi/linux/x11.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cc/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cc/__main__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cc/cdeps.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cc/cdeps.toml +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cc/cli.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cc/srclangs.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/_boilerplate.cc +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/_distutils/LICENSE +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/_distutils/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/_distutils/build_ext.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/_distutils/compilers/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/_distutils/compilers/ccompiler.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/_distutils/compilers/options.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/_distutils/compilers/unixccompiler.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/_distutils/dir_util.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/_distutils/errors.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/_distutils/extension.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/_distutils/file_util.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/_distutils/modified.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/_distutils/spawn.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/_distutils/sysconfig.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/_distutils/util.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/_distutils/version.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/build.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/cmake.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/importhook.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/magic.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cexts/scan.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/__main__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/cache.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/ci.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/cli.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/compose.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/consts.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/docker/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/docker/buildcaching.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/docker/cache.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/docker/cacheserved/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/docker/cacheserved/cache.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/docker/cacheserved/manifests.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/docker/cmds.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/docker/dataserver.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/docker/imagepulling.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/docker/inject.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/docker/packing.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/docker/repositories.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/docker/utils.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/github/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/github/api/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/github/api/clients.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/github/api/v1/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/github/api/v1/api.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/github/api/v1/client.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/github/api/v2/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/github/api/v2/api.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/github/api/v2/azure.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/github/api/v2/client.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/github/bootstrap.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/github/cache.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/github/cli.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/github/env.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/github/inject.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/inject.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/requirements.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/shell.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/ci/utils.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cli/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cli/__main__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cli/_pathhack.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cli/clicli.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cli/install.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cli/main.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cli/managers.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cli/types.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/clipboard/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/clipboard/clipboard.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/clipboard/darwin_cf.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/clipboard/linux_x11.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cmake.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cmdlog/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cmdlog/__main__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cmdlog/_cmdlog.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cmdlog/cli.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/cmdlog/cmdlog.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/dataclasses/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/dataclasses/__main__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/dataclasses/cli.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/dataserver/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/dataserver/handlers.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/dataserver/http.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/dataserver/routes.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/dataserver/server.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/dataserver/targets.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/git/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/git/magic.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/git/revisions.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/git/shallow.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/git/status.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/home/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/home/paths.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/home/secrets.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/home/shadow.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/imgur.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/intellij/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/intellij/cli.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/intellij/ides.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/intellij/open.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/__main__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/cli.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/default.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/inject.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/inspect.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/providers/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/providers/base.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/providers/inject.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/providers/running.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/providers/standalone.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/providers/system.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/pyenv/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/pyenv/inject.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/pyenv/install.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/pyenv/provider.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/pyenv/pyenv.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/resolvers.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/types.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/uv/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/uv/inject.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/uv/provider.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/uv/uv.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/interp/venvs.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/messages/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/messages/base.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/messages/formats.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/messages/messages.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/messages/parsing.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/numerics/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/numerics/formats.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/numerics/numerics.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/numerics/types.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/protocol/LICENSE +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/protocol/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/protocol/consts.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/protocol/errors.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/protocol/message.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/protocol/nuh.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/protocol/parsing.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/protocol/rendering.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/protocol/tags.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/irc/protocol/utils.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/magic/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/magic/__main__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/magic/cli.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/magic/find.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/magic/magic.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/magic/prepare.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/magic/styles.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/manifests/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/manifests/__main__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/manifests/_dumping.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/manifests/building.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/manifests/dumping.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/manifests/main.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/markdown/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/markdown/incparse.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/markdown/tokens.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/mypy/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/mypy/debug.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/mypy/report.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/oci/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/oci/building.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/oci/compression.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/oci/data.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/oci/datarefs.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/oci/dataserver.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/oci/loading.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/oci/media.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/oci/pack/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/oci/pack/packing.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/oci/pack/repositories.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/oci/pack/unpacking.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/oci/repositories.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/oci/tars.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/packaging/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/packaging/marshal.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/packaging/names.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/packaging/requires.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/packaging/revisions.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/packaging/specifiers.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/packaging/versions.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/packaging/wheelfile.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/pip.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/precheck/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/precheck/__main__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/precheck/base.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/precheck/blanklines.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/precheck/caches.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/precheck/git.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/precheck/imports.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/precheck/lite.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/precheck/main.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/precheck/manifests.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/precheck/scripts.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/precheck/unicode.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/asts/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/asts/parents.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/asts/toplevel.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/asts/visitors.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/attrdocs.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/bracepy.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/classdot.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/docstrings/LICENSE +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/docstrings/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/docstrings/attrdoc.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/docstrings/common.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/docstrings/epydoc.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/docstrings/google.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/docstrings/numpydoc.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/docstrings/parser.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/docstrings/rest.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/findimports.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/reprs.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/scripts/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/scripts/bumpversion.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/scripts/execstat.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/scripts/importtrace.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/srcheaders.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/tokens/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/tokens/all.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/tokens/tokenizert.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/tokens/utils.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/tools/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/tools/importscan.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/tools/mkrelimp.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/py/tools/pipdepup.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/pyproject/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/pyproject/__main__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/pyproject/cli.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/pyproject/configs.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/pyproject/inject.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/pyproject/pkg.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/pyproject/reqs.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/pyproject/resources/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/pyproject/resources/docker-dev.sh +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/pyproject/resources/python.sh +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/pyproject/tools/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/pyproject/tools/aboutdeps.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/pyproject/venvs.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/rs/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/scripts/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/scripts/ci.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/scripts/interp.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/scripts/lib/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/scripts/lib/inject.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/scripts/lib/logs.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/scripts/lib/marshal.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/scripts/pyproject.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/scripts/slowcat.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/scripts/tmpexec.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tagstrings.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/cloc.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/diff.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/doc.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/docker.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/git/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/git/__main__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/git/cli.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/git/cloning.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/git/consts.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/git/messages.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/json/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/json/__main__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/json/cli.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/json/formats.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/json/io.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/json/parsing.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/json/processing.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/json/rendering.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/jsonview/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/jsonview/__main__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/jsonview/cli.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/jsonview/resources/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/jsonview/resources/jsonview.css +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/jsonview/resources/jsonview.js +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/linehisto.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/mkenv.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/notebook.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/pawk/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/pawk/__main__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/pawk/pawk.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/pip.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/prof.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/qr.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/shadow.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/shell.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tools/sqlrepl.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/apps/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/apps/edit/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/apps/edit/main.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/apps/irc/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/apps/irc/__main__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/apps/irc/app.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/apps/irc/client.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/apps/irc/commands.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/apps/irc/main.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/apps/markdown/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/apps/markdown/__main__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/apps/markdown/cli.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/rich/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/rich/console2.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/rich/markdown2.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/textual/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/textual/app2.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/textual/autocomplete/LICENSE +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/textual/autocomplete/__init__.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/textual/autocomplete/matching.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/textual/autocomplete/paths.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/textual/autocomplete/widget.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev/tui/textual/drivers2.py +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev.egg-info/SOURCES.txt +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev.egg-info/dependency_links.txt +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev.egg-info/entry_points.txt +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/omdev.egg-info/top_level.txt +0 -0
- {omdev-0.0.0.dev481 → omdev-0.0.0.dev482}/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.dev482
|
|
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.dev482
|
|
18
18
|
Provides-Extra: all
|
|
19
19
|
Requires-Dist: black~=25.11; extra == "all"
|
|
20
20
|
Requires-Dist: pycparser~=2.23; extra == "all"
|
|
@@ -44,7 +44,7 @@ def __omlish_amalg__(): # noqa
|
|
|
44
44
|
dict(path='../../omlish/lite/reflect.py', sha1='c4fec44bf144e9d93293c996af06f6c65fc5e63d'),
|
|
45
45
|
dict(path='../../omlish/lite/strings.py', sha1='89831ecbc34ad80e118a865eceb390ed399dc4d6'),
|
|
46
46
|
dict(path='../../omlish/lite/marshal.py', sha1='96348f5f2a26dc27d842d33cc3927e9da163436b'),
|
|
47
|
-
dict(path='dumping.py', sha1='
|
|
47
|
+
dict(path='dumping.py', sha1='9b2305b5dd89cffc6ae36ed1603be3bec1b6cf18'),
|
|
48
48
|
],
|
|
49
49
|
)
|
|
50
50
|
|
|
@@ -1775,7 +1775,8 @@ unmarshal_obj = OBJ_MARSHALER_MANAGER.unmarshal_obj
|
|
|
1775
1775
|
|
|
1776
1776
|
@dc.dataclass(frozen=True)
|
|
1777
1777
|
class DumpedDataclassCodegen:
|
|
1778
|
-
|
|
1778
|
+
mod_name: str
|
|
1779
|
+
cls_qualname: str
|
|
1779
1780
|
|
|
1780
1781
|
plan_repr: str
|
|
1781
1782
|
|
|
@@ -1848,7 +1849,8 @@ class _DataclassCodegenDumper:
|
|
|
1848
1849
|
raise TypeError(ref)
|
|
1849
1850
|
|
|
1850
1851
|
dumped.append(DumpedDataclassCodegen(
|
|
1851
|
-
|
|
1852
|
+
mod_name=check.not_none(cur_module),
|
|
1853
|
+
cls_qualname=ctx.cls.__qualname__,
|
|
1852
1854
|
|
|
1853
1855
|
plan_repr=repr(prepared.plans),
|
|
1854
1856
|
|
|
@@ -1933,6 +1935,7 @@ class _DataclassCodegenDumper:
|
|
|
1933
1935
|
|
|
1934
1936
|
with processing_options_context(Codegen(
|
|
1935
1937
|
style='aot',
|
|
1938
|
+
force=True,
|
|
1936
1939
|
callback=callback,
|
|
1937
1940
|
)):
|
|
1938
1941
|
process_dir(os.path.dirname(init_file_path))
|
|
@@ -17,6 +17,7 @@ TODO:
|
|
|
17
17
|
"""
|
|
18
18
|
import ast
|
|
19
19
|
import asyncio
|
|
20
|
+
import hashlib
|
|
20
21
|
import inspect
|
|
21
22
|
import json
|
|
22
23
|
import os.path
|
|
@@ -39,6 +40,7 @@ from ..py.asts.toplevel import analyze_module_top_level
|
|
|
39
40
|
from ..py.reprs import textwrap_repr
|
|
40
41
|
from ..py.srcheaders import get_py_header_lines
|
|
41
42
|
from .dumping import DataclassCodegenDumperOutput
|
|
43
|
+
from .dumping import DumpedDataclassCodegen
|
|
42
44
|
|
|
43
45
|
|
|
44
46
|
log = logs.get_module_logger(globals())
|
|
@@ -228,6 +230,8 @@ class DataclassCodeGen:
|
|
|
228
230
|
|
|
229
231
|
#
|
|
230
232
|
|
|
233
|
+
PROCESS_FN_NAME: ta.ClassVar[str] = '_process_dataclass'
|
|
234
|
+
|
|
231
235
|
async def process_dumper_output(
|
|
232
236
|
self,
|
|
233
237
|
cfg_pkg: ConfiguredPackage,
|
|
@@ -252,23 +256,102 @@ class DataclassCodeGen:
|
|
|
252
256
|
from . import _template
|
|
253
257
|
lines.extend(inspect.getsource(_template).strip().split('\n'))
|
|
254
258
|
|
|
255
|
-
|
|
259
|
+
#
|
|
260
|
+
|
|
261
|
+
dumped_by_plan_repr: dict[str, list[DumpedDataclassCodegen]] = {}
|
|
262
|
+
|
|
263
|
+
seen_cls_name_tups: set[tuple[str, str]] = set()
|
|
256
264
|
|
|
257
265
|
for x in output.dumped:
|
|
258
|
-
|
|
259
|
-
|
|
266
|
+
cls_name_tup = (x.mod_name, x.cls_qualname)
|
|
267
|
+
check.not_in(cls_name_tup, seen_cls_name_tups)
|
|
268
|
+
seen_cls_name_tups.add(cls_name_tup)
|
|
269
|
+
|
|
270
|
+
try:
|
|
271
|
+
lst = dumped_by_plan_repr[x.plan_repr]
|
|
272
|
+
except KeyError:
|
|
273
|
+
dumped_by_plan_repr[x.plan_repr] = [x]
|
|
274
|
+
continue
|
|
275
|
+
|
|
276
|
+
y = lst[0]
|
|
277
|
+
if set(x.refs) != set(y.refs):
|
|
278
|
+
raise RuntimeError(f'Mismatched refs: {x!r} != {y!r}')
|
|
279
|
+
|
|
280
|
+
lst.append(x)
|
|
281
|
+
|
|
282
|
+
#
|
|
283
|
+
|
|
284
|
+
prs_by_sha1 = col.make_map((
|
|
285
|
+
(hashlib.sha1(pr.encode()).hexdigest(), pr) # noqa
|
|
286
|
+
for pr in dumped_by_plan_repr
|
|
287
|
+
), strict=True)
|
|
288
|
+
|
|
289
|
+
for pr_sha1, pr in sorted(prs_by_sha1.items()):
|
|
290
|
+
grp = dumped_by_plan_repr[pr]
|
|
291
|
+
x = grp[0]
|
|
292
|
+
|
|
293
|
+
fn_name = f'{self.PROCESS_FN_NAME}__{pr_sha1}'
|
|
260
294
|
|
|
261
295
|
lines.extend(['', ''])
|
|
262
296
|
|
|
263
|
-
lines.
|
|
297
|
+
lines.append(
|
|
264
298
|
'@_register(',
|
|
299
|
+
)
|
|
300
|
+
|
|
301
|
+
lines.extend([
|
|
302
|
+
f' plan_repr=(',
|
|
265
303
|
*[
|
|
266
|
-
f'
|
|
267
|
-
for prl in textwrap_repr(x.plan_repr, self._target_line_width -
|
|
304
|
+
f' {prl}'
|
|
305
|
+
for prl in textwrap_repr(x.plan_repr, self._target_line_width - 8)
|
|
268
306
|
],
|
|
307
|
+
f' ),',
|
|
308
|
+
f' plan_repr_sha1={pr_sha1!r},',
|
|
309
|
+
])
|
|
310
|
+
|
|
311
|
+
op_ref_idents = [r.ident for r in x.refs if r.kind == 'op']
|
|
312
|
+
if op_ref_idents:
|
|
313
|
+
lines.extend([
|
|
314
|
+
f' op_ref_idents=(',
|
|
315
|
+
*[
|
|
316
|
+
f' {r!r},'
|
|
317
|
+
for r in sorted(op_ref_idents)
|
|
318
|
+
],
|
|
319
|
+
f' ),',
|
|
320
|
+
])
|
|
321
|
+
else:
|
|
322
|
+
lines.append(
|
|
323
|
+
' op_ref_idents=(),',
|
|
324
|
+
)
|
|
325
|
+
|
|
326
|
+
lines.extend([
|
|
327
|
+
f' cls_names=(',
|
|
328
|
+
*[
|
|
329
|
+
f' {cn!r},'
|
|
330
|
+
for cn in sorted([
|
|
331
|
+
(y.mod_name, y.cls_qualname)
|
|
332
|
+
for y in grp
|
|
333
|
+
])
|
|
334
|
+
],
|
|
335
|
+
f' ),',
|
|
336
|
+
])
|
|
337
|
+
|
|
338
|
+
lines.append(
|
|
269
339
|
')',
|
|
340
|
+
)
|
|
341
|
+
|
|
342
|
+
lines.extend([
|
|
343
|
+
f'def {fn_name}():',
|
|
344
|
+
])
|
|
345
|
+
|
|
346
|
+
lines.extend([
|
|
347
|
+
f' {l}' if l.strip() else ''
|
|
348
|
+
for l in x.fn_lines
|
|
349
|
+
])
|
|
350
|
+
|
|
351
|
+
lines.extend([
|
|
352
|
+
'',
|
|
353
|
+
f' return {x.fn_name}',
|
|
270
354
|
])
|
|
271
|
-
lines.extend([l if l.strip() else '' for l in x.fn_lines])
|
|
272
355
|
|
|
273
356
|
lines.append('')
|
|
274
357
|
|
|
@@ -15,7 +15,8 @@ from omlish.lite.marshal import marshal_obj
|
|
|
15
15
|
|
|
16
16
|
@dc.dataclass(frozen=True)
|
|
17
17
|
class DumpedDataclassCodegen:
|
|
18
|
-
|
|
18
|
+
mod_name: str
|
|
19
|
+
cls_qualname: str
|
|
19
20
|
|
|
20
21
|
plan_repr: str
|
|
21
22
|
|
|
@@ -88,7 +89,8 @@ class _DataclassCodegenDumper:
|
|
|
88
89
|
raise TypeError(ref)
|
|
89
90
|
|
|
90
91
|
dumped.append(DumpedDataclassCodegen(
|
|
91
|
-
|
|
92
|
+
mod_name=check.not_none(cur_module),
|
|
93
|
+
cls_qualname=ctx.cls.__qualname__,
|
|
92
94
|
|
|
93
95
|
plan_repr=repr(prepared.plans),
|
|
94
96
|
|
|
@@ -173,6 +175,7 @@ class _DataclassCodegenDumper:
|
|
|
173
175
|
|
|
174
176
|
with processing_options_context(Codegen(
|
|
175
177
|
style='aot',
|
|
178
|
+
force=True,
|
|
176
179
|
callback=callback,
|
|
177
180
|
)):
|
|
178
181
|
process_dir(os.path.dirname(init_file_path))
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: omdev
|
|
3
|
-
Version: 0.0.0.
|
|
3
|
+
Version: 0.0.0.dev482
|
|
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.dev482
|
|
18
18
|
Provides-Extra: all
|
|
19
19
|
Requires-Dist: black~=25.11; extra == "all"
|
|
20
20
|
Requires-Dist: pycparser~=2.23; extra == "all"
|
|
@@ -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.dev482'
|
|
17
17
|
classifiers = [
|
|
18
18
|
'Development Status :: 2 - Pre-Alpha',
|
|
19
19
|
'Intended Audience :: Developers',
|
|
@@ -24,7 +24,7 @@ classifiers = [
|
|
|
24
24
|
]
|
|
25
25
|
description = 'omdev'
|
|
26
26
|
dependencies = [
|
|
27
|
-
'omlish == 0.0.0.
|
|
27
|
+
'omlish == 0.0.0.dev482',
|
|
28
28
|
]
|
|
29
29
|
|
|
30
30
|
[project.optional-dependencies]
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|