truss 0.11.2rc505__tar.gz → 0.11.4__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.
Potentially problematic release.
This version of truss might be problematic. Click here for more details.
- {truss-0.11.2rc505 → truss-0.11.4}/PKG-INFO +1 -1
- {truss-0.11.2rc505 → truss-0.11.4}/pyproject.toml +1 -1
- {truss-0.11.2rc505 → truss-0.11.4}/truss/api/__init__.py +5 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/remote/baseten/api.py +8 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/remote/baseten/custom_types.py +7 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/control/requirements.txt +2 -1
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/server/requirements.txt +2 -1
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/patch/test_calc_patch.py +30 -51
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_control_truss_patching.py +0 -2
- {truss-0.11.2rc505 → truss-0.11.4}/truss/truss_handle/patch/calc_patch.py +9 -6
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/deployment/code_gen.py +3 -3
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/deployment/deployment_client.py +11 -4
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/public_types.py +9 -4
- {truss-0.11.2rc505 → truss-0.11.4}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/.github/pull_request_template.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/.gitignore +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/CODE_OF_CONDUCT.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/CONTRIBUTING.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/LICENSE +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/npm/android-arm-eabi/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/npm/android-arm64/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/npm/darwin-arm64/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/npm/darwin-universal/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/npm/darwin-x64/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/npm/freebsd-x64/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/npm/linux-arm-gnueabihf/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/npm/linux-arm-musleabihf/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/npm/linux-arm64-gnu/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/npm/linux-arm64-musl/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/npm/linux-riscv64-gnu/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/npm/linux-x64-gnu/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/npm/linux-x64-musl/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/npm/win32-arm64-msvc/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/npm/win32-ia32-msvc/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/npm/win32-x64-msvc/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/python_bindings/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/scripts/README_nodejs.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/context_builder.Dockerfile +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/docs/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/docs/chains/doc_gen/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/docs/contribute/base-images.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/docs/contribute/release.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/api/definitions.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/base/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/base/constants.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/base/custom_types.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/base/errors.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/base/trt_llm_config.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/base/truss_config.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/base/truss_spec.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/chains_commands.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/cli.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/logs/base_watcher.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/logs/model_log_watcher.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/logs/training_log_watcher.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/logs/utils.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/remote_cli.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/common.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/core.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/deploy_checkpoints/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/deploy_checkpoints/deploy_checkpoints.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/deploy_checkpoints/deploy_checkpoints_helpers.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/deploy_checkpoints/deploy_full_checkpoints.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/deploy_checkpoints/deploy_lora_checkpoints.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/deploy_checkpoints/deploy_whisper_checkpoints.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/deploy_from_checkpoint_config.yml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/deploy_from_checkpoint_config_whisper.yml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/metrics_watcher.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/poller.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/types.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train_commands.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/utils/common.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/utils/output.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/cli/utils/self_upgrade.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/contexts/docker_build_setup.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/contexts/image_builder/cache_warmer.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/contexts/image_builder/image_builder.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/contexts/image_builder/serving_image_builder.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/contexts/image_builder/util.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/contexts/local_loader/docker_build_emulator.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/contexts/local_loader/dockerfile_parser.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/contexts/local_loader/load_model_local.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/contexts/local_loader/truss_module_loader.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/contexts/local_loader/utils.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/contexts/truss_context.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/local/local_config.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/local/local_config_handler.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/patch/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/patch/hash.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/patch/signature.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/patch/truss_dir_patch_applier.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/remote/baseten/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/remote/baseten/auth.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/remote/baseten/core.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/remote/baseten/error.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/remote/baseten/remote.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/remote/baseten/rest_client.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/remote/baseten/service.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/remote/baseten/utils/status.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/remote/baseten/utils/tar.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/remote/baseten/utils/time.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/remote/baseten/utils/transfer.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/remote/remote_factory.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/remote/truss_remote.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/README.md.jinja +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/base.Dockerfile.jinja +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/cache.Dockerfile.jinja +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/cache_requirements.txt +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/control/control/application.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/control/control/endpoints.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/control/control/helpers/context_managers.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/control/control/helpers/custom_types.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/control/control/helpers/errors.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/control/control/helpers/inference_server_controller.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/control/control/helpers/inference_server_process_controller.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/control/control/helpers/inference_server_starter.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/control/control/helpers/truss_patch/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/control/control/helpers/truss_patch/model_code_patch_applier.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/control/control/helpers/truss_patch/model_container_patch_applier.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/control/control/helpers/truss_patch/requirement_name_identifier.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/control/control/helpers/truss_patch/system_packages.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/control/control/server.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/copy_cache_files.Dockerfile.jinja +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/custom/examples.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/custom/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/custom/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/custom_python_dx/my_model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/docker_server/proxy.conf.jinja +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/docker_server/supervisord.conf.jinja +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/docker_server_requirements.txt +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/server/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/server/common/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/server/common/errors.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/server/common/patches/whisper/patch.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/server/common/patches.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/server/common/retry.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/server/common/schema.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/server/common/tracing.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/server/main.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/server/model_wrapper.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/server/truss_server.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/server.Dockerfile.jinja +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/shared/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/shared/dynamic_config_resolver.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/shared/lazy_data_resolver.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/shared/log_config.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/shared/secrets_resolver.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/shared/serialization.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/shared/util.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/train/config.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/train/run.sh +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/trtllm-audio/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/trtllm-audio/packages/sigint_patch.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/trtllm-audio/packages/whisper_trt/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/trtllm-audio/packages/whisper_trt/assets.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/trtllm-audio/packages/whisper_trt/batching.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/trtllm-audio/packages/whisper_trt/custom_types.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/trtllm-audio/packages/whisper_trt/modeling.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/trtllm-audio/packages/whisper_trt/tokenizer.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/trtllm-audio/packages/whisper_trt/utils.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/trtllm-briton/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/templates/trtllm-briton/src/extension.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/cli/test_cli.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/cli/train/resources/test_deploy_from_checkpoint_config.yml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/cli/train/test_cache_view.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/cli/train/test_deploy_checkpoints.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/cli/train/test_train_cli_core.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/cli/train/test_train_init.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/conftest.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/contexts/image_builder/test_serving_image_builder.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/contexts/local_loader/test_load_local.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/contexts/local_loader/test_truss_module_finder.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/helpers.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/local/test_local_config_handler.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/patch/test_dir_signature.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/patch/test_hash.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/patch/test_signature.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/patch/test_truss_dir_patch_applier.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/patch/test_types.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/remote/baseten/conftest.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/remote/baseten/test_api.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/remote/baseten/test_auth.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/remote/baseten/test_core.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/remote/baseten/test_remote.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/remote/baseten/test_service.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/remote/test_remote_factory.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/remote/test_truss_remote.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/templates/control/control/helpers/test_context_managers.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/templates/control/control/helpers/test_model_container_patch_applier.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/templates/control/control/helpers/test_requirement_name_identifier.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/templates/control/control/test_endpoints.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/templates/control/control/test_server.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/templates/control/control/test_server_integration.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/templates/core/server/test_dynamic_config_resolver.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/templates/core/server/test_lazy_data_resolver_v2.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/templates/core/server/test_secrets_resolver.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/templates/server/common/test_retry.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/templates/server/test_model_wrapper.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/templates/server/test_schema.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/templates/server/test_truss_server.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_build.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_config.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_context_builder_image.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_custom_server.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/annotated_types_truss/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/annotated_types_truss/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/annotated_types_truss/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/annotated_types_truss/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/auto-mpg.data +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/context_builder_image_test/Dockerfile +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/context_builder_image_test/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/context_builder_image_test/test.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/gcs_fix/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/gcs_fix/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/gcs_fix/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/gcs_fix/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/happy.ipynb +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/model_load_failure_test/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/model_load_failure_test/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/model_load_failure_test/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/model_load_failure_test/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/patch_ping_test_server/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/patch_ping_test_server/app.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/pima-indians-diabetes.csv +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/readme_int_example.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/readme_no_example.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/readme_str_example.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/server.Dockerfile +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/server_conformance_test_truss/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/server_conformance_test_truss/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/server_conformance_test_truss/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/server_conformance_test_truss/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_async_truss/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_async_truss/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_async_truss/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_async_truss/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_basic_truss/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_basic_truss/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_basic_truss/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_basic_truss/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_build_commands/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_build_commands/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_build_commands/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_build_commands/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_build_commands_failure/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_build_commands_failure/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_build_commands_failure/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_build_commands_failure/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_concurrency_truss/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_concurrency_truss/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_concurrency_truss/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_concurrency_truss/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_custom_server_truss/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_custom_server_truss/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_custom_server_truss/test_docker_image/Dockerfile +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_custom_server_truss/test_docker_image/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_custom_server_truss/test_docker_image/VERSION +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_custom_server_truss/test_docker_image/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_custom_server_truss/test_docker_image/app.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_custom_server_truss/test_docker_image/build_upload_new_image.sh +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_env_vars/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_go_custom_server_truss/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_go_custom_server_truss/docker/Dockerfile +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_go_custom_server_truss/docker/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_go_custom_server_truss/docker/VERSION +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_go_custom_server_truss/docker/build_upload_new_image.sh +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_go_custom_server_truss/docker/main.go +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_openai/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_openai/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_openai/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_openai/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_pyantic_v1/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_pyantic_v1/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_pyantic_v1/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_pyantic_v1/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_pyantic_v1/requirements.txt +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_pyantic_v2/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_pyantic_v2/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_pyantic_v2/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_pyantic_v2/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_pyantic_v2/requirements.txt +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_requirements_file_truss/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_requirements_file_truss/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_requirements_file_truss/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_requirements_file_truss/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_requirements_file_truss/requirements.txt +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_async_generator_truss/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_async_generator_truss/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_async_generator_truss/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_async_generator_truss/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_read_timeout/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_read_timeout/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_read_timeout/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_read_timeout/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_truss/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_truss/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_truss/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_truss/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_truss_with_error/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_truss_with_error/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_truss_with_error/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_truss_with_error/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_truss_with_error/packages/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_truss_with_error/packages/helpers_1.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_truss_with_error/packages/helpers_2.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_truss_with_tracing/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_truss_with_tracing/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_truss_with_tracing/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_streaming_truss_with_tracing/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_trt_llm_truss/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_trt_llm_truss/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_trt_llm_truss/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_trt_llm_truss/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss/examples.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss/model/dummy +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss/packages/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss/packages/test_package/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss/packages/test_package/test.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss_server_model_cache_v1/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss_server_model_cache_v1/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss_server_model_cache_v1/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss_server_model_cache_v1/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss_server_model_cache_v2/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss_server_model_cache_v2/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss_server_model_cache_v2/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss_server_model_cache_v2/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss_with_error/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss_with_error/config.yaml +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss_with_error/model/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss_with_error/model/model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss_with_error/packages/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss_with_error/packages/helpers_1.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_data/test_truss_with_error/packages/helpers_2.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_docker.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_model_inference.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_model_schema.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_testing_utilities_for_other_tests.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_truss_gatherer.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_truss_handle.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/test_util.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/trt_llm/test_trt_llm_config.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/trt_llm/test_validation.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/util/test_config_checks.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/util/test_env_vars.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/tests/util/test_path.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/trt_llm/config_checks.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/trt_llm/validation.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/truss_handle/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/truss_handle/build.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/truss_handle/decorators.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/truss_handle/patch/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/truss_handle/patch/constants.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/truss_handle/patch/custom_types.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/truss_handle/patch/dir_signature.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/truss_handle/patch/hash.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/truss_handle/patch/local_truss_patch_applier.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/truss_handle/patch/signature.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/truss_handle/patch/truss_dir_patch_applier.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/truss_handle/readme_generator.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/truss_handle/truss_gatherer.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/truss_handle/truss_handle.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/util/.truss_ignore +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/util/docker.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/util/download.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/util/env_vars.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/util/gpu.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/util/jinja.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/util/log_utils.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/util/notebook.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/util/path.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/util/requirements.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss/util/user_config.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/examples/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/examples/audio-transcription/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/examples/rag/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/tests/itest_chain/requirements.txt +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/deployment/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/framework.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/private_types.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/public_api.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/py.typed +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/pydantic_numpy.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/reference_code/reference_chainlet.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/reference_code/reference_model.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/remote_chainlet/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/remote_chainlet/model_skeleton.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/remote_chainlet/stub.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/remote_chainlet/utils.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/streaming.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/utils.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-train/truss_train/__init__.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-train/truss_train/definitions.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-train/truss_train/deployment.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-train/truss_train/loader.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-train/truss_train/public_api.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-train/truss_train/restore_from_checkpoint.py +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-transfer/README.md +0 -0
- {truss-0.11.2rc505 → truss-0.11.4}/truss-transfer/tests/README.md +0 -0
|
@@ -64,6 +64,7 @@ def push(
|
|
|
64
64
|
environment: Optional[str] = None,
|
|
65
65
|
progress_bar: Optional[Type["progress.Progress"]] = None,
|
|
66
66
|
include_git_info: bool = False,
|
|
67
|
+
preserve_env_instance_type: bool = True,
|
|
67
68
|
) -> definitions.ModelDeployment:
|
|
68
69
|
"""
|
|
69
70
|
Pushes a Truss to Baseten.
|
|
@@ -88,6 +89,9 @@ def push(
|
|
|
88
89
|
include_git_info: Whether to attach git versioning info (sha, branch, tag) to
|
|
89
90
|
deployments made from within a git repo. If set to True in `.trussrc`, it
|
|
90
91
|
will always be attached.
|
|
92
|
+
preserve_env_instance_type: When pushing a truss to an environment, whether to use the resources
|
|
93
|
+
specified in the truss config to resolve the instance type or preserve the instance type
|
|
94
|
+
configured in the specified environment.
|
|
91
95
|
|
|
92
96
|
Returns:
|
|
93
97
|
The newly created ModelDeployment.
|
|
@@ -130,6 +134,7 @@ def push(
|
|
|
130
134
|
environment=environment,
|
|
131
135
|
progress_bar=progress_bar,
|
|
132
136
|
include_git_info=include_git_info,
|
|
137
|
+
preserve_env_instance_type=preserve_env_instance_type,
|
|
133
138
|
) # type: ignore
|
|
134
139
|
|
|
135
140
|
return definitions.ModelDeployment(cast(BasetenService, service))
|
|
@@ -6,6 +6,7 @@ import requests
|
|
|
6
6
|
|
|
7
7
|
from truss.remote.baseten import custom_types as b10_types
|
|
8
8
|
from truss.remote.baseten.auth import ApiKey, AuthService
|
|
9
|
+
from truss.remote.baseten.custom_types import APIKeyCategory
|
|
9
10
|
from truss.remote.baseten.error import ApiError
|
|
10
11
|
from truss.remote.baseten.rest_client import RestAPIClient
|
|
11
12
|
from truss.remote.baseten.utils.transfer import base64_encoded_json_str
|
|
@@ -560,6 +561,13 @@ class BasetenApi:
|
|
|
560
561
|
def get_all_secrets(self) -> Any:
|
|
561
562
|
return self._rest_api_client.get("v1/secrets")
|
|
562
563
|
|
|
564
|
+
# NOTE(Tyron): `name` is required because all official
|
|
565
|
+
# Baseten API keys should have a descriptive name.
|
|
566
|
+
def create_api_key(self, api_key_type: APIKeyCategory, name: str) -> Any:
|
|
567
|
+
return self._rest_api_client.post(
|
|
568
|
+
"v1/api_keys", body={"type": api_key_type.value, "name": name}
|
|
569
|
+
)
|
|
570
|
+
|
|
563
571
|
def upsert_training_project(self, training_project):
|
|
564
572
|
resp_json = self._rest_api_client.post(
|
|
565
573
|
"v1/training_projects",
|
|
@@ -155,3 +155,10 @@ class GetCacheSummaryResponseV1(pydantic.BaseModel):
|
|
|
155
155
|
file_summaries: list[FileSummary] = pydantic.Field(
|
|
156
156
|
description="List of files in the cache"
|
|
157
157
|
)
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
class APIKeyCategory(Enum):
|
|
161
|
+
PERSONAL = "PERSONAL"
|
|
162
|
+
WORKSPACE_MANAGE_ALL = "WORKSPACE_MANAGE_ALL"
|
|
163
|
+
WORKSPACE_EXPORT_METRICS = "WORKSPACE_EXPORT_METRICS"
|
|
164
|
+
WORKSPACE_INVOKE = "WORKSPACE_INVOKE"
|
|
@@ -7,6 +7,7 @@ python-json-logger>=2.0.2
|
|
|
7
7
|
tenacity>=8.1.0
|
|
8
8
|
# To avoid divergence, this should follow the latest release.
|
|
9
9
|
truss==0.11.1
|
|
10
|
-
|
|
10
|
+
# NB(nikhil): Uvicorn 0.36.0 has breaking changes for the event loop, so we pin to a lower version.
|
|
11
|
+
uvicorn>=0.24.0,<0.36.0
|
|
11
12
|
uvloop>=0.19.0
|
|
12
13
|
websockets>=10.0
|
|
@@ -19,6 +19,7 @@ python-json-logger>=2.0.2
|
|
|
19
19
|
pyyaml>=6.0.0
|
|
20
20
|
requests>=2.31.0
|
|
21
21
|
truss-transfer==0.0.30
|
|
22
|
-
|
|
22
|
+
# NB(nikhil): Uvicorn 0.36.0 has breaking changes for the event loop, so we pin to a lower version.
|
|
23
|
+
uvicorn>=0.24.0,<0.36.0
|
|
23
24
|
uvloop>=0.19.0
|
|
24
25
|
websockets>=10.0
|
|
@@ -16,7 +16,6 @@ from truss.templates.control.control.helpers.custom_types import (
|
|
|
16
16
|
Patch,
|
|
17
17
|
PatchType,
|
|
18
18
|
PythonRequirementPatch,
|
|
19
|
-
SystemPackagePatch,
|
|
20
19
|
)
|
|
21
20
|
from truss.truss_handle.patch.calc_patch import (
|
|
22
21
|
_calc_python_requirements_patches,
|
|
@@ -736,45 +735,33 @@ def test_calc_config_patches_add_remove_env_var(custom_model_truss_dir: Path):
|
|
|
736
735
|
]
|
|
737
736
|
|
|
738
737
|
|
|
739
|
-
def
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
body=ConfigPatch(
|
|
750
|
-
action=Action.UPDATE,
|
|
751
|
-
config=yaml.safe_load((custom_model_truss_dir / "config.yaml").open()),
|
|
752
|
-
),
|
|
753
|
-
),
|
|
754
|
-
]
|
|
738
|
+
def test_system_package_changes_make_truss_unpatchable_add(
|
|
739
|
+
custom_model_truss_dir: Path,
|
|
740
|
+
):
|
|
741
|
+
# System package changes should raise a ValueError indicating full rebuild required
|
|
742
|
+
with pytest.raises(
|
|
743
|
+
ValueError, match="System package changes detected - full rebuild required"
|
|
744
|
+
):
|
|
745
|
+
_apply_config_change_and_calc_patches(
|
|
746
|
+
custom_model_truss_dir, lambda config: config.system_packages.append("curl")
|
|
747
|
+
)
|
|
755
748
|
|
|
756
749
|
|
|
757
|
-
def
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
body=ConfigPatch(
|
|
770
|
-
action=Action.UPDATE,
|
|
771
|
-
config=yaml.safe_load((custom_model_truss_dir / "config.yaml").open()),
|
|
772
|
-
),
|
|
773
|
-
),
|
|
774
|
-
]
|
|
750
|
+
def test_system_package_changes_make_truss_unpatchable_remove(
|
|
751
|
+
custom_model_truss_dir: Path,
|
|
752
|
+
):
|
|
753
|
+
# System package changes should raise a ValueError indicating full rebuild required
|
|
754
|
+
with pytest.raises(
|
|
755
|
+
ValueError, match="System package changes detected - full rebuild required"
|
|
756
|
+
):
|
|
757
|
+
_apply_config_change_and_calc_patches(
|
|
758
|
+
custom_model_truss_dir,
|
|
759
|
+
config_pre_op=lambda config: config.system_packages.append("curl"),
|
|
760
|
+
config_op=lambda config: config.system_packages.clear(),
|
|
761
|
+
)
|
|
775
762
|
|
|
776
763
|
|
|
777
|
-
def
|
|
764
|
+
def test_system_package_changes_make_truss_unpatchable_modify(
|
|
778
765
|
custom_model_truss_dir: Path,
|
|
779
766
|
):
|
|
780
767
|
def config_pre_op(config: TrussConfig):
|
|
@@ -783,21 +770,13 @@ def test_calc_config_patches_add_and_remove_system_package(
|
|
|
783
770
|
def config_op(config: TrussConfig):
|
|
784
771
|
config.system_packages = ["curl", "libsnd"]
|
|
785
772
|
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
Patch(
|
|
794
|
-
type=PatchType.CONFIG,
|
|
795
|
-
body=ConfigPatch(
|
|
796
|
-
action=Action.UPDATE,
|
|
797
|
-
config=yaml.safe_load((custom_model_truss_dir / "config.yaml").open()),
|
|
798
|
-
),
|
|
799
|
-
),
|
|
800
|
-
]
|
|
773
|
+
# System package changes should raise a ValueError indicating full rebuild required
|
|
774
|
+
with pytest.raises(
|
|
775
|
+
ValueError, match="System package changes detected - full rebuild required"
|
|
776
|
+
):
|
|
777
|
+
_apply_config_change_and_calc_patches(
|
|
778
|
+
custom_model_truss_dir, config_pre_op=config_pre_op, config_op=config_op
|
|
779
|
+
)
|
|
801
780
|
|
|
802
781
|
|
|
803
782
|
def test_calc_config_patches_toggle_apply_library_patches(custom_model_truss_dir: Path):
|
|
@@ -145,7 +145,6 @@ def test_control_truss_python_sys_req_patch(
|
|
|
145
145
|
th.remove_python_requirement(req)
|
|
146
146
|
return th.docker_predict([1], tag=tag, binary=binary, local_port=None)
|
|
147
147
|
|
|
148
|
-
|
|
149
148
|
with ensure_kill_all():
|
|
150
149
|
th.docker_predict([1], tag=tag, binary=binary, local_port=None)
|
|
151
150
|
orig_num_truss_images = len(th.get_all_docker_images())
|
|
@@ -162,7 +161,6 @@ def test_control_truss_python_sys_req_patch(
|
|
|
162
161
|
verify_python_requirement_not_installed_on_container(container, python_req)
|
|
163
162
|
|
|
164
163
|
|
|
165
|
-
|
|
166
164
|
@pytest.mark.integration
|
|
167
165
|
@pytest.mark.parametrize(
|
|
168
166
|
"binary, python_version",
|
|
@@ -18,7 +18,6 @@ from truss.templates.control.control.helpers.custom_types import (
|
|
|
18
18
|
Patch,
|
|
19
19
|
PatchType,
|
|
20
20
|
PythonRequirementPatch,
|
|
21
|
-
SystemPackagePatch,
|
|
22
21
|
)
|
|
23
22
|
from truss.templates.control.control.helpers.truss_patch.requirement_name_identifier import (
|
|
24
23
|
RequirementMeta,
|
|
@@ -423,13 +422,17 @@ def _calc_python_requirements_patches(
|
|
|
423
422
|
def _calc_system_packages_patches(
|
|
424
423
|
prev_config: TrussConfig, new_config: TrussConfig
|
|
425
424
|
) -> List[Patch]:
|
|
426
|
-
"""Calculate patch based on changes to system
|
|
425
|
+
"""Calculate patch based on changes to system packages.
|
|
427
426
|
|
|
428
|
-
System package patches are no longer supported, so this
|
|
429
|
-
|
|
427
|
+
System package patches are no longer supported, so this function
|
|
428
|
+
raises an exception if any system package changes are detected.
|
|
430
429
|
"""
|
|
431
|
-
|
|
432
|
-
|
|
430
|
+
prev_pkgs = system_packages_set(prev_config.system_packages)
|
|
431
|
+
new_pkgs = system_packages_set(new_config.system_packages)
|
|
432
|
+
|
|
433
|
+
if prev_pkgs != new_pkgs:
|
|
434
|
+
raise ValueError("System package changes detected - full rebuild required")
|
|
435
|
+
|
|
433
436
|
return []
|
|
434
437
|
|
|
435
438
|
|
|
@@ -764,13 +764,13 @@ def _gen_truss_config(
|
|
|
764
764
|
config.external_package_dirs.append(ext_dir.abs_path)
|
|
765
765
|
config.use_local_src = use_local_src
|
|
766
766
|
|
|
767
|
-
if public_types.
|
|
768
|
-
config.secrets[public_types.
|
|
767
|
+
if public_types.CHAIN_API_KEY_SECRET_NAME not in config.secrets:
|
|
768
|
+
config.secrets[public_types.CHAIN_API_KEY_SECRET_NAME] = (
|
|
769
769
|
public_types.SECRET_DUMMY
|
|
770
770
|
)
|
|
771
771
|
else:
|
|
772
772
|
logging.info(
|
|
773
|
-
f"Chains automatically add {public_types.
|
|
773
|
+
f"Chains automatically add {public_types.CHAIN_API_KEY_SECRET_NAME} "
|
|
774
774
|
"to secrets - no need to manually add it."
|
|
775
775
|
)
|
|
776
776
|
config.model_cache = truss_config.ModelCache(assets.cached)
|
{truss-0.11.2rc505 → truss-0.11.4}/truss-chains/truss_chains/deployment/deployment_client.py
RENAMED
|
@@ -303,7 +303,7 @@ def _push_service_docker(
|
|
|
303
303
|
options: private_types.PushOptionsLocalDocker,
|
|
304
304
|
) -> str:
|
|
305
305
|
th = truss_handle.TrussHandle(truss_dir)
|
|
306
|
-
th.add_secret(public_types.
|
|
306
|
+
th.add_secret(public_types.CHAIN_API_KEY_SECRET_NAME, options.baseten_chain_api_key)
|
|
307
307
|
container = th.docker_run(
|
|
308
308
|
local_port=None,
|
|
309
309
|
detach=True,
|
|
@@ -536,14 +536,21 @@ def _create_baseten_chain(
|
|
|
536
536
|
def _create_chains_secret_if_missing(remote_provider: b10_remote.BasetenRemote) -> None:
|
|
537
537
|
secrets_info = remote_provider.api.get_all_secrets()
|
|
538
538
|
secret_names = {sec["name"] for sec in secrets_info["secrets"]}
|
|
539
|
-
|
|
539
|
+
|
|
540
|
+
if public_types.CHAIN_API_KEY_SECRET_NAME not in secret_names:
|
|
540
541
|
logging.info(
|
|
541
542
|
"It seems you are using chains for the first time, since there "
|
|
542
|
-
f"is no `{public_types.
|
|
543
|
+
f"is no `{public_types.CHAIN_API_KEY_SECRET_NAME}` secret on baseten. "
|
|
543
544
|
"Creating secret automatically."
|
|
544
545
|
)
|
|
546
|
+
|
|
547
|
+
workspace_api_key = remote_provider.api.create_api_key(
|
|
548
|
+
api_key_type=b10_types.APIKeyCategory.WORKSPACE_INVOKE,
|
|
549
|
+
name=public_types.CHAIN_API_KEY_NAME,
|
|
550
|
+
)["api_key"]
|
|
551
|
+
|
|
545
552
|
remote_provider.api.upsert_secret(
|
|
546
|
-
public_types.
|
|
553
|
+
public_types.CHAIN_API_KEY_SECRET_NAME, workspace_api_key
|
|
547
554
|
)
|
|
548
555
|
|
|
549
556
|
|
|
@@ -28,7 +28,12 @@ DEFAULT_CONCURRENCY_LIMIT = 300
|
|
|
28
28
|
CpuCountT = Literal["cpu_count"]
|
|
29
29
|
CPU_COUNT: CpuCountT = "cpu_count"
|
|
30
30
|
|
|
31
|
-
|
|
31
|
+
|
|
32
|
+
# NOTE(Tyron): This is a secret that points to an API key value.
|
|
33
|
+
CHAIN_API_KEY_SECRET_NAME = "baseten_chain_api_key"
|
|
34
|
+
|
|
35
|
+
# NOTE(Tyron): This is the actual API key pointed to by the above secret.
|
|
36
|
+
CHAIN_API_KEY_NAME = "baseten-chain-api-key"
|
|
32
37
|
|
|
33
38
|
_K = TypeVar("_K", contravariant=True)
|
|
34
39
|
_V = TypeVar("_V", covariant=True)
|
|
@@ -738,14 +743,14 @@ class DeploymentContext(custom_types.SafeModelNonSerializable):
|
|
|
738
743
|
)
|
|
739
744
|
error_msg = (
|
|
740
745
|
"For using chains, it is required to setup a an API key with name "
|
|
741
|
-
f"`{
|
|
746
|
+
f"`{CHAIN_API_KEY_SECRET_NAME}` on Baseten to allow chain Chainlet to "
|
|
742
747
|
"call other Chainlets. For local execution, secrets can be provided "
|
|
743
748
|
"to `run_local`."
|
|
744
749
|
)
|
|
745
|
-
if
|
|
750
|
+
if CHAIN_API_KEY_SECRET_NAME not in self.secrets:
|
|
746
751
|
raise MissingDependencyError(error_msg)
|
|
747
752
|
|
|
748
|
-
api_key = self.secrets[
|
|
753
|
+
api_key = self.secrets[CHAIN_API_KEY_SECRET_NAME]
|
|
749
754
|
if api_key == SECRET_DUMMY:
|
|
750
755
|
raise MissingDependencyError(
|
|
751
756
|
f"{error_msg}. Retrieved dummy value of `{api_key}`."
|
|
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
|
{truss-0.11.2rc505 → truss-0.11.4}/baseten-performance-client/node_bindings/npm/darwin-x64/README.md
RENAMED
|
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
|
{truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/deploy_checkpoints/deploy_checkpoints_helpers.py
RENAMED
|
File without changes
|
{truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/deploy_checkpoints/deploy_full_checkpoints.py
RENAMED
|
File without changes
|
{truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/deploy_checkpoints/deploy_lora_checkpoints.py
RENAMED
|
File without changes
|
{truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/deploy_checkpoints/deploy_whisper_checkpoints.py
RENAMED
|
File without changes
|
|
File without changes
|
{truss-0.11.2rc505 → truss-0.11.4}/truss/cli/train/deploy_from_checkpoint_config_whisper.yml
RENAMED
|
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
|
{truss-0.11.2rc505 → truss-0.11.4}/truss/templates/control/control/helpers/context_managers.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|