keboola-cli 0.80.2__tar.gz → 0.80.3__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.
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/PKG-INFO +1 -1
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/pyproject.toml +1 -1
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/changelog.py +22 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/_semantic_layer_reference_data.py +5 -1
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/dev_portal.py +2 -2
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/deep_lineage_service.py +19 -2
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_deep_lineage_service.py +47 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/.gitignore +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/CLAUDE.md +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/CONTRIBUTING.md +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/LICENSE +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/Makefile +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/README.md +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/examples/README.md +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/examples/storage_tui/README.md +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/plugins/kbagent/.claude-plugin/CLAUDE.md +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/benchmark.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/check_command_sync.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/check_error_codes.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/check_file_size.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/check_mcp_parity.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/check_sentinel_guards.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/check_wheel_ui.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/debug_linkedby_type.sh +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/file_size_baseline.json +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/gen_command_reference.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/gen_release_notes.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/generate_changelog.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/generate_skill.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/hatch_build.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/lineage_deep.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/post-edit-quality.sh +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/pre-commit +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/sync_version.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/scripts/web-dev.sh +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/__init__.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/__main__.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/ai_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/auth/__init__.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/auth/auth_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/auth/device.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/auth/environment.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/auth/models.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/auth/pkce.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/auth/sentinel.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/auth/state_store.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/auth/token_provider.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/auto_update.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/client/__init__.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/client/_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/client/_core.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/client/_transfer.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/client/branches.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/client/configs.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/client/misc.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/client/query.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/client/queue.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/client/storage_files.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/client/storage_tables.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/client/stream.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/client/tokens.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/client/workspaces.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/__init__.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/_auth_picker.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/_checkbox_select.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/_data_app_git.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/_data_app_runtime.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/_helpers.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/_metadata_input.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/_semantic_layer_crud.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/_semantic_layer_helpers.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/_storage_snapshots.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/agent.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/auth.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/branch.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/changelog.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/component.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/config.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/context.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/data_app.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/docs.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/doctor.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/encrypt.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/feature.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/flow.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/http_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/init.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/job.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/kai.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/lineage.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/org.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/permissions.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/project.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/repl.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/schedule.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/search.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/semantic_layer.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/serve.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/sharing.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/storage.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/stream.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/sync.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/token.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/tool.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/transformation.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/version.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/workspace.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/config_store.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/constants.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/data_science_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/dev_portal_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/errors.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/frozen_dist.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/http_base.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/json_utils.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/lib.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/manage_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/mcp_parity.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/metastore_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/models.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/output.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/permissions.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/py.typed +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/resources/__init__.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/resources/flow/__init__.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/resources/flow/conditional-flow-schema.json +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/resources/flow/conditional_flow_examples.jsonl +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/resources/flow/flow-schema.json +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/resources/flow/legacy_flow_examples.jsonl +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/result_models.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/scheduler_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/__init__.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/agent_runner.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/agents_store.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/app.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/auth.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/dependencies.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/pricing.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/__init__.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/agents.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/ai_chat.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/branches.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/components.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/configs.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/data_apps.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/dev_portal.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/docs.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/encrypt.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/feature.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/flows.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/health.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/jobs.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/kai.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/lineage.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/mcp.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/members.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/org.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/projects.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/schedules.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/search.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/semantic_layer.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/sharing.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/storage.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/stream.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/token.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/transformation.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/workspaces.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/run_broadcaster.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/sse.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/__init__.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/_auth_registration.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/_encryption.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/_semantic_layer_cascade.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/_semantic_layer_crud.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/_semantic_layer_internals.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/_semantic_layer_lookup.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/_semantic_layer_reference_data.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/_sync_bindings.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/_sync_branch.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/_sync_bulk.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/_sync_clone.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/_sync_models.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/_sync_push_ops.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/_sync_storage.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/_sync_writeback.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/_transformation_ops.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/agent_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/auth_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/base.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/branch_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/component_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/config_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/data_app_git_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/data_app_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/dev_portal_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/docs_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/doctor_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/encrypt_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/feature_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/flow_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/flow_validation.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/http_forwarder_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/job_idempotency_store.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/job_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/kai_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/lineage_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/mcp_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/mcp_transport.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/member_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/org_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/project_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/repo_validate_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/schedule_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/search_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/semantic_layer_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/sharing_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/snapshot_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/storage_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/stream_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/sync_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/token_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/transformation_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/variables_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/version_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/workspace_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/stream_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/sync/__init__.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/sync/branch_mapping.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/sync/clone.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/sync/code_extraction.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/sync/config_format.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/sync/diff_engine.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/sync/git_utils.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/sync/manifest.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/sync/naming.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/sync/secrets.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/sync/sql_split.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/update_runner.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/__init__.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/conftest.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/helpers.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_agent_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_agent_prompt.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_agent_prompt_helper.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_agent_runner.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_agent_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_agents_store_events.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_ai_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_auth_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_auth_device.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_auth_environment.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_auth_models.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_auth_picker.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_auth_pkce.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_auth_register_projects.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_auth_sentinel.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_auth_sentinel_guards.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_auth_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_auth_state_store.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_auto_update.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_base_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_branch_metadata_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_branch_metadata_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_branch_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_build_hook.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_changelog_check.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_changelog_render.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_check_command_sync.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_check_file_size.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_check_sentinel_guards.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_checkbox_select.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_choice_enums.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_cli_auth.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_client_device_enrollment.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_component_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_component_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_component_sync_action.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_config_create_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_config_create_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_config_encryption.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_config_examples.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_config_metadata.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_config_rename.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_config_rename_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_config_resolution.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_config_row_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_config_row_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_config_search.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_config_search_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_config_set_default_bucket.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_config_store.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_config_update.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_data_app_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_data_app_git_repo.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_data_app_plain_env_keys.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_data_app_secrets_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_data_app_secrets_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_data_app_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_data_app_validate_repo_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_dev_portal_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_dev_portal_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_dev_portal_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_docs_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_doctor_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_e2e.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_e2e_auth.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_e2e_config_dir_mode.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_e2e_lineage_deep.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_encrypt_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_encrypt_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_encryption.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_errors.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_feature_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_feature_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_file_locking.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_flow_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_flow_examples.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_flow_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_flow_validation.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_frozen_dist.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_gen_command_reference.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_gen_release_notes.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_helpers.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_http_base.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_http_base_auth.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_http_client_cmd.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_http_forwarder_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_integration.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_job_idempotency_store.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_json_utils.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_kai_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_kai_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_lib.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_lib_device_enrollment.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_lineage_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_local_ai_chat.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_manage_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_manage_token_bulk.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_manage_token_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_mcp_deprecation_warnings.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_mcp_parity_map.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_mcp_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_mcp_transport.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_member_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_member_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_metastore_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_models.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_normalize_script.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_org_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_output.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_permissions.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_permissions_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_pricing.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_project_edit.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_project_edit_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_project_info_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_project_info_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_repl.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_result_models.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_run_broadcaster.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_schedule_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_schedule_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_scheduler_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_search_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_search_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_semantic_layer_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_semantic_layer_schema.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_semantic_layer_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_serve_banner_encoding.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_serve_conversation_id.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_serve_ui.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_server_router_calls.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_server_semantic_layer_routes_e2e.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_server_smoke.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_services.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sharing_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_skill_frontmatter.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sql_split.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_storage_clone.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_storage_create_table.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_storage_delete.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_storage_describe_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_storage_describe_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_storage_empty_definition.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_storage_export_filters.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_storage_files.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_storage_snapshots.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_storage_swap.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_storage_tables.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_storage_truncate.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_storage_write.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_stream_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_stream_client.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_stream_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sync_branch_mapping.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sync_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sync_clone.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sync_code_extraction.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sync_config_format.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sync_diff_engine.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sync_e2e.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sync_encrypt.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sync_force_pull_baseline.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sync_manifest.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sync_naming.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sync_plaintext_audit.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sync_reconcile.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sync_secrets.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sync_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sync_storage_jobs.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_sync_version_script.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_token_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_token_provider.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_token_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_tool_call_permissions.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_transformation_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_transformation_ops.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_update_runner.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_variables_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_variables_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_version_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_workspace_cli.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_workspace_gc.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_workspace_service.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/tests/test_workspace_sql_helper.py +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/README.md +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/index.html +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/package-lock.json +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/package.json +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/postcss.config.js +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/App.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/api/client.ts +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/components/AgentRunView.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/components/ConfirmModal.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/components/Drawer.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/components/Empty.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/components/JsonView.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/components/ManageTokenModal.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/components/Table.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/index.css +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/layout/Shell.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/layout/Sidebar.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/layout/StatusBar.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/layout/TopBar.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/main.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Agents.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Branches.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Changelog.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Components.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Configs.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Dashboard.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/DataApps.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Doctor.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Encrypt.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Flows.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Jobs.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Lineage.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/LocalAi.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Mcp.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Members.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Org.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Projects.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Schedules.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Search.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/SemanticLayer.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/SemanticLayerDialogs.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Sharing.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Storage.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Streams.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/pages/Workspaces.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/state.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/theme.tsx +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/src/types.ts +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/tailwind.config.ts +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/tsconfig.json +0 -0
- {keboola_cli-0.80.2 → keboola_cli-0.80.3}/web/frontend/vite.config.ts +0 -0
|
@@ -24,6 +24,28 @@ from .constants import CHANGELOG_HEADLINE_MAX_CHARS
|
|
|
24
24
|
|
|
25
25
|
# Ordered newest-first. Each value is a list of brief one-line descriptions.
|
|
26
26
|
CHANGELOG: dict[str, list[str]] = {
|
|
27
|
+
"0.80.3": [
|
|
28
|
+
"Fix (#570): `kbagent lineage build` crashed with `UnicodeDecodeError` on "
|
|
29
|
+
"Windows when a transformation's `transform.sql` or `code.py` contained "
|
|
30
|
+
"non-ASCII text -- an accented word in a Czech comment was enough to abort "
|
|
31
|
+
"the whole graph. The reads used `Path.read_text()`, which decodes with "
|
|
32
|
+
"the platform default: cp1250 on a Czech box, where UTF-8's continuation "
|
|
33
|
+
"bytes are undefined. Keboola serves this content as UTF-8, so UTF-8 is "
|
|
34
|
+
"now explicit, which also makes a build reproducible across machines "
|
|
35
|
+
"instead of varying with the host locale. Files that genuinely hold "
|
|
36
|
+
"non-UTF-8 bytes -- a transformation edited locally and saved in the OS "
|
|
37
|
+
'codepage -- decode with `errors="replace"`: table identifiers are '
|
|
38
|
+
"ASCII, so a mangled comment costs nothing and never costs the graph. The "
|
|
39
|
+
"`PYTHONUTF8=1` workaround is no longer needed. Thanks to "
|
|
40
|
+
"@papousek-radan for the report.",
|
|
41
|
+
"Fix (#570): the same unqualified `Path.read_text()` in "
|
|
42
|
+
"`dev-portal create --data` / `patch --value-file` and "
|
|
43
|
+
"`semantic-layer reference-data set --members-file` now reads UTF-8 too. "
|
|
44
|
+
"Those parse their input as data rather than scan it, so they stay "
|
|
45
|
+
"strict: a decode error there is honest and identical on every OS, "
|
|
46
|
+
"whereas the platform default silently produced different results per "
|
|
47
|
+
"machine.",
|
|
48
|
+
],
|
|
27
49
|
"0.80.2": [
|
|
28
50
|
"Fix (#571): the deferred Windows self-update never applied. kbagent has "
|
|
29
51
|
"not auto-updated on Windows since the deferred path landed in 0.78.0 -- "
|
|
@@ -111,7 +111,11 @@ def _print_reference_data_delete_result(console: Console, data: dict) -> None:
|
|
|
111
111
|
def _load_members(formatter: Any, members_file: str) -> list[dict]:
|
|
112
112
|
"""Read a JSON array of member objects from a file or ``-`` (stdin)."""
|
|
113
113
|
try:
|
|
114
|
-
raw =
|
|
114
|
+
raw = (
|
|
115
|
+
sys.stdin.read()
|
|
116
|
+
if members_file == "-"
|
|
117
|
+
else Path(members_file).read_text(encoding="utf-8")
|
|
118
|
+
)
|
|
115
119
|
except OSError as exc:
|
|
116
120
|
formatter.error(
|
|
117
121
|
message=f"Could not read members file {members_file!r}: {exc}",
|
|
@@ -317,7 +317,7 @@ def _load_payload(data: str | None) -> dict:
|
|
|
317
317
|
raise typer.BadParameter("--data is required")
|
|
318
318
|
if data == "-":
|
|
319
319
|
return json.loads(sys.stdin.read())
|
|
320
|
-
return json.loads(Path(data).read_text())
|
|
320
|
+
return json.loads(Path(data).read_text(encoding="utf-8"))
|
|
321
321
|
|
|
322
322
|
|
|
323
323
|
def _render_pending(formatter: OutputFormatter, pending: PendingWrite) -> None:
|
|
@@ -435,7 +435,7 @@ def patch_cmd(
|
|
|
435
435
|
payload = _load_payload(data)
|
|
436
436
|
elif property_:
|
|
437
437
|
if value_file:
|
|
438
|
-
raw = Path(value_file).read_text()
|
|
438
|
+
raw = Path(value_file).read_text(encoding="utf-8")
|
|
439
439
|
elif value is not None:
|
|
440
440
|
raw = value
|
|
441
441
|
else:
|
{keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/services/deep_lineage_service.py
RENAMED
|
@@ -48,6 +48,23 @@ _QUALIFIED_3 = re.compile(r'"KBC_USE4_(\d+)"\s*\.\s*"([^"]+)"\s*\.\s*"([^"]+)"')
|
|
|
48
48
|
_QUALIFIED_2 = re.compile(r'"([^"]+)"\s*\.\s*"([^"]+)"')
|
|
49
49
|
|
|
50
50
|
|
|
51
|
+
def _read_source(path: Path) -> str:
|
|
52
|
+
"""Read a transformation's code, whatever bytes the file actually holds.
|
|
53
|
+
|
|
54
|
+
``Path.read_text()`` decodes with the platform default, which on a Czech or
|
|
55
|
+
Polish Windows box is cp1250 -- so a single accented character in a SQL
|
|
56
|
+
comment aborted the whole lineage build with ``UnicodeDecodeError`` (issue
|
|
57
|
+
#570). Keboola serves this content as UTF-8, so UTF-8 is the right guess
|
|
58
|
+
everywhere, and forcing it also makes a build reproducible across machines.
|
|
59
|
+
|
|
60
|
+
``errors="replace"`` because the goal here is finding table references: a
|
|
61
|
+
file that genuinely holds non-UTF-8 bytes (a locally-edited transformation
|
|
62
|
+
saved in the OS codepage) should cost a mangled comment, never the entire
|
|
63
|
+
graph. Table identifiers are ASCII, so nothing load-bearing is lost.
|
|
64
|
+
"""
|
|
65
|
+
return path.read_text(encoding="utf-8", errors="replace")
|
|
66
|
+
|
|
67
|
+
|
|
51
68
|
def extract_sql_table_refs(sql: str, project_id: int) -> list[tuple[int, str, str]]:
|
|
52
69
|
"""Extract table references from Snowflake SQL using a state machine.
|
|
53
70
|
|
|
@@ -632,10 +649,10 @@ class DeepLineageService:
|
|
|
632
649
|
code_py = full_path / "code.py"
|
|
633
650
|
|
|
634
651
|
if transform_sql.exists():
|
|
635
|
-
code = transform_sql
|
|
652
|
+
code = _read_source(transform_sql)
|
|
636
653
|
code_type = "sql"
|
|
637
654
|
elif code_py.exists():
|
|
638
|
-
code = code_py
|
|
655
|
+
code = _read_source(code_py)
|
|
639
656
|
code_type = "python"
|
|
640
657
|
|
|
641
658
|
# Include config row mappings
|
|
@@ -4,6 +4,7 @@ import json
|
|
|
4
4
|
from pathlib import Path
|
|
5
5
|
from unittest.mock import patch
|
|
6
6
|
|
|
7
|
+
import pytest
|
|
7
8
|
import yaml
|
|
8
9
|
|
|
9
10
|
from keboola_agent_cli.config_store import ConfigStore
|
|
@@ -15,6 +16,7 @@ from keboola_agent_cli.services.deep_lineage_service import (
|
|
|
15
16
|
Table,
|
|
16
17
|
_collect_create_targets,
|
|
17
18
|
_collect_cte_names,
|
|
19
|
+
_read_source,
|
|
18
20
|
_strip_comments_and_strings,
|
|
19
21
|
extract_sql_table_refs,
|
|
20
22
|
)
|
|
@@ -939,3 +941,48 @@ class TestRenderErDiagramXssRegression:
|
|
|
939
941
|
)
|
|
940
942
|
assert "<img" not in rendered
|
|
941
943
|
assert "<img" in rendered
|
|
944
|
+
|
|
945
|
+
|
|
946
|
+
class TestSourceReadsAreUtf8:
|
|
947
|
+
"""Transformation code must decode the same on every host (issue #570).
|
|
948
|
+
|
|
949
|
+
`Path.read_text()` uses the platform default encoding. On a Czech or Polish
|
|
950
|
+
Windows box that is cp1250, so one accented character in a SQL comment
|
|
951
|
+
aborted the entire `lineage build` with `UnicodeDecodeError`. These run
|
|
952
|
+
everywhere by driving the decode explicitly rather than by depending on the
|
|
953
|
+
host's locale.
|
|
954
|
+
"""
|
|
955
|
+
|
|
956
|
+
def test_utf8_content_survives_a_cp1250_default(
|
|
957
|
+
self, tmp_path: Path, monkeypatch: pytest.MonkeyPatch
|
|
958
|
+
) -> None:
|
|
959
|
+
"""The exact reported crash: UTF-8 bytes read on a cp1250 host."""
|
|
960
|
+
sql = tmp_path / "transform.sql"
|
|
961
|
+
# U+0159 encodes to 0xC5 0x99 in UTF-8; 0x99 is undefined in cp1250,
|
|
962
|
+
# which is what raised in the report.
|
|
963
|
+
sql.write_bytes("-- příprava dat\nSELECT 1 FROM t;\n".encode())
|
|
964
|
+
|
|
965
|
+
real_read_text = Path.read_text
|
|
966
|
+
|
|
967
|
+
def cp1250_default(
|
|
968
|
+
self: Path, encoding: str | None = None, errors: str | None = None
|
|
969
|
+
) -> str:
|
|
970
|
+
# Mimic a Windows host: no explicit encoding means cp1250.
|
|
971
|
+
return real_read_text(self, encoding=encoding or "cp1250", errors=errors)
|
|
972
|
+
|
|
973
|
+
monkeypatch.setattr(Path, "read_text", cp1250_default)
|
|
974
|
+
|
|
975
|
+
code = _read_source(sql)
|
|
976
|
+
assert "SELECT 1 FROM t" in code
|
|
977
|
+
assert "příprava" in code, "UTF-8 content must round-trip intact"
|
|
978
|
+
|
|
979
|
+
def test_genuinely_undecodable_bytes_do_not_abort_the_build(self, tmp_path: Path) -> None:
|
|
980
|
+
"""A locally-edited file saved in the OS codepage costs a comment, not the graph."""
|
|
981
|
+
sql = tmp_path / "transform.sql"
|
|
982
|
+
# 0x81 is invalid UTF-8 and is the byte from the report's traceback.
|
|
983
|
+
sql.write_bytes(b"-- koment\x81\nSELECT 1 FROM in.c_bucket.tbl;\n")
|
|
984
|
+
|
|
985
|
+
code = _read_source(sql)
|
|
986
|
+
|
|
987
|
+
# The table reference -- the only thing lineage actually needs -- survives.
|
|
988
|
+
assert "in.c_bucket.tbl" in code
|
|
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
|
{keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/_checkbox_select.py
RENAMED
|
File without changes
|
|
File without changes
|
{keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/_data_app_runtime.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/_semantic_layer_crud.py
RENAMED
|
File without changes
|
{keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/_semantic_layer_helpers.py
RENAMED
|
File without changes
|
{keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/commands/_storage_snapshots.py
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
|
|
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
|
{keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/resources/flow/flow-schema.json
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
|
{keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/components.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/dev_portal.py
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
|
{keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/semantic_layer.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{keboola_cli-0.80.2 → keboola_cli-0.80.3}/src/keboola_agent_cli/server/routers/transformation.py
RENAMED
|
File without changes
|