flyte icon indicating copy to clipboard operation
flyte copied to clipboard

Upgrade to go 1.23

Open Sovietaced opened this issue 10 months ago • 16 comments

Why are the changes needed?

Keeping Go up to date is beneficial since new versions have improvements for common source of bugs/issues as well as performance improvements and new features.

This change will also allow us to move to go 1.24 when that it deemed stable enough.

What changes were proposed in this pull request?

  • Updates mockery to a version that supports go 1.23 and the new alias type. The introduces some diffs in the generated code.
  • Updates pflag generator to handle new alias type (this required upgrading golang.org/x/tools)

How was this patch tested?

Unit tests

Check all the applicable boxes

  • [x] I updated the documentation accordingly.
  • [x] All new and existing tests passed.
  • [x] All commits are signed-off.

Related PRs

Docs link

Summary by Bito

This PR upgrades the Go version from 1.22 to 1.23 across all Flyte components, updating base Docker images and dependencies. It upgrades mockery to v2.52.1 to support Go 1.23's alias type feature, adds notification template support, and refines configuration parameters including timeout settings and error handling for improved performance.

Unit tests added: False

Estimated effort to review (1-5, lower is better): 5

Sovietaced avatar Feb 15 '25 07:02 Sovietaced

Code Review Agent Run Status

  • Limitations and other issues:  Failure - The AI Code Review Agent skipped reviewing this change because it is configured to exclude certain pull requests based on the source/target branch or the pull request status. You can change the settings here, or contact the agent instance creator at [email protected].

flyte-bot avatar Feb 15 '25 07:02 flyte-bot

Codecov Report

:x: Patch coverage is 10.98901% with 81 lines in your changes missing coverage. Please review. :white_check_mark: Project coverage is 58.57%. Comparing base (668aeb9) to head (e102598). :warning: Report is 2 commits behind head on master.

Files with missing lines Patch % Lines
flytestdlib/cli/pflags/api/generator.go 10.00% 80 Missing and 1 partial :warning:
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #6249      +/-   ##
==========================================
- Coverage   58.65%   58.57%   -0.08%     
==========================================
  Files         929      929              
  Lines       70765    70851      +86     
==========================================
- Hits        41505    41504       -1     
- Misses      26114    26200      +86     
- Partials     3146     3147       +1     
Flag Coverage Δ
unittests-datacatalog 59.03% <ø> (ø)
unittests-flyteadmin 56.09% <ø> (-0.03%) :arrow_down:
unittests-flytecopilot 39.56% <ø> (ø)
unittests-flytectl 64.64% <ø> (ø)
unittests-flyteidl 76.12% <ø> (ø)
unittests-flyteplugins 61.10% <ø> (ø)
unittests-flytepropeller 55.06% <ø> (ø)
unittests-flytestdlib 63.11% <10.98%> (-0.95%) :arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

:rocket: New features to boost your workflow:
  • :snowflake: Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

codecov[bot] avatar Feb 15 '25 07:02 codecov[bot]

Code Review Agent Run Status

  • Limitations and other issues:  Failure - The AI Code Review Agent skipped reviewing this change because it is configured to exclude certain pull requests based on the source/target branch or the pull request status. You can change the settings here, or contact the agent instance creator at [email protected].

flyte-bot avatar Feb 15 '25 08:02 flyte-bot

A little gift to help with this: our fork of mockery has just been removed.

eapolinario avatar Feb 27 '25 16:02 eapolinario

A little gift to help with this: our fork of mockery has just been removed.

Much appreciated thank you

Sovietaced avatar Feb 27 '25 18:02 Sovietaced

Code Review Agent Run Status

  • Limitations and other issues:  Failure - The AI Code Review Agent skipped reviewing this change because it is configured to exclude certain pull requests based on the source/target branch or the pull request status. You can change the settings here, or contact the agent instance creator at [email protected].

flyte-bot avatar Feb 27 '25 19:02 flyte-bot

Code Review Agent Run Status

  • Limitations and other issues:  Failure - The AI Code Review Agent skipped reviewing this change because it is configured to exclude certain pull requests based on the source/target branch or the pull request status. You can change the settings here, or contact the agent instance creator at [email protected].

flyte-bot avatar Feb 28 '25 05:02 flyte-bot

Code Review Agent Run #6f4da4

Actionable Suggestions - 9
  • flyteadmin/auth/interfaces/mocks/handler_registerer.go - 1
    • Consider mock testing pattern consistency · Line 54-54
  • flyteplugins/go/tasks/pluginmachinery/catalog/mocks/future.go - 1
    • Consider using Call.Return for mock expectations · Line 142-142
  • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/MutableNodeStatus.go - 2
  • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableNodeStatus.go - 1
  • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/MutableWorkflowNodeStatus.go - 1
    • Mock expectation pattern could be improved · Line 224-224
  • boilerplate/flyte/golang_support_tools/go.mod - 1
    • Consider using specific Go version · Line 3-3
  • flyteidl/clients/go/admin/mocks/UnsafeAsyncAgentServiceServer.go - 1
    • Consider using Call.Return for mock setup · Line 48-48
  • docker/sandbox-bundled/bootstrap/go.mod - 1
    • Consider using officially released Go version · Line 3-3
Additional Suggestions - 10
  • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/MutableNodeStatus.go - 1
    • Consider using Call.Return for mock setup · Line 89-89
  • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/MutableTaskNodeStatus.go - 2
  • flyteadmin/pkg/async/schedule/mocks/workflow_executor.go - 1
    • Consider using Call.Return for mock expectations · Line 48-48
  • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/MutableArrayNodeStatus.go - 1
    • Consider using Call.Return for mock expectations · Line 628-628
  • flyteidl/clients/go/admin/mocks/SyncAgentService_ExecuteTaskSyncServer.go - 1
    • Consider using Call.Return for mock testing · Line 391-391
  • flyteplugins/go/tasks/pluginmachinery/catalog/mocks/ready_handler.go - 1
    • Consider using Call.Return for mock setup · Line 56-56
  • flyteadmin/auth/interfaces/mocks/o_auth2_provider.go - 1
    • Consider using Call.Return for mock testing · Line 654-654
  • flytestdlib/cli/pflags/api/generator.go - 2
    • Consider standardizing JSON method naming convention · Line 280-286
    • Consider standardizing JSON method naming · Line 285-286
Review Details
  • Files reviewed - 294 · Commit Range: 2291526..3305736
    • Dockerfile
    • Dockerfile.datacatalog
    • Dockerfile.flyteadmin
    • Dockerfile.flytecopilot
    • Dockerfile.flytepropeller
    • Dockerfile.flytescheduler
    • boilerplate/flyte/golang_support_tools/go.mod
    • boilerplate/flyte/golang_support_tools/go.sum
    • boilerplate/flyte/golang_test_targets/download_tooling.sh
    • datacatalog/go.mod
    • datacatalog/go.sum
    • datacatalog/pkg/manager/mocks/artifact_manager.go
    • datacatalog/pkg/repositories/mocks/artifact_repo.go
    • datacatalog/pkg/repositories/mocks/dataset_repo.go
    • datacatalog/pkg/repositories/mocks/partition_repo.go
    • datacatalog/pkg/repositories/mocks/reservation_repo.go
    • datacatalog/pkg/repositories/mocks/tag_repo.go
    • docker/sandbox-bundled/Dockerfile
    • docker/sandbox-bundled/bootstrap/go.mod
    • flyteadmin/auth/interfaces/mocks/authentication_context.go
    • flyteadmin/auth/interfaces/mocks/cookie_handler.go
    • flyteadmin/auth/interfaces/mocks/handler_registerer.go
    • flyteadmin/auth/interfaces/mocks/identity_context.go
    • flyteadmin/auth/interfaces/mocks/o_auth2_provider.go
    • flyteadmin/auth/interfaces/mocks/o_auth2_resource_server.go
    • flyteadmin/go.mod
    • flyteadmin/go.sum
    • flyteadmin/pkg/async/cloudevent/mocks/publisher.go
    • flyteadmin/pkg/async/cloudevent/mocks/sender.go
    • flyteadmin/pkg/async/events/mocks/node_execution_event_writer.go
    • flyteadmin/pkg/async/events/mocks/workflow_execution_event_writer.go
    • flyteadmin/pkg/async/notifications/mocks/emailer.go
    • flyteadmin/pkg/async/notifications/mocks/processor.go
    • flyteadmin/pkg/async/notifications/mocks/publisher.go
    • flyteadmin/pkg/async/notifications/mocks/sendgrid_client.go
    • flyteadmin/pkg/async/notifications/mocks/smtp_client.go
    • flyteadmin/pkg/async/schedule/mocks/event_scheduler.go
    • flyteadmin/pkg/async/schedule/mocks/workflow_executor.go
    • flyteadmin/pkg/clusterresource/mocks/flyte_admin_data_provider.go
    • flyteadmin/pkg/data/mocks/remote_url_interface.go
    • flyteadmin/pkg/executioncluster/mocks/cluster_interface.go
    • flyteadmin/pkg/executioncluster/mocks/execution_target_provider.go
    • flyteadmin/pkg/executioncluster/mocks/get_target_interface.go
    • flyteadmin/pkg/executioncluster/mocks/list_targets_interface.go
    • flyteadmin/pkg/manager/mocks/execution_interface.go
    • flyteadmin/pkg/manager/mocks/launch_plan_interface.go
    • flyteadmin/pkg/manager/mocks/metrics_interface.go
    • flyteadmin/pkg/manager/mocks/named_entity_interface.go
    • flyteadmin/pkg/manager/mocks/node_execution_interface.go
    • flyteadmin/pkg/manager/mocks/project_interface.go
    • flyteadmin/pkg/manager/mocks/resource_interface.go
    • flyteadmin/pkg/manager/mocks/signal_interface.go
    • flyteadmin/pkg/manager/mocks/task_execution_interface.go
    • flyteadmin/pkg/manager/mocks/task_interface.go
    • flyteadmin/pkg/manager/mocks/version_interface.go
    • flyteadmin/pkg/manager/mocks/workflow_interface.go
    • flyteadmin/pkg/repositories/mocks/execution_event_repo_interface.go
    • flyteadmin/pkg/repositories/mocks/node_execution_event_repo_interface.go
    • flyteadmin/pkg/repositories/mocks/signal_repo_interface.go
    • flyteadmin/pkg/runtime/interfaces/mocks/cluster_pool_assignment_configuration.go
    • flyteadmin/pkg/runtime/interfaces/mocks/quality_of_service_configuration.go
    • flyteadmin/pkg/runtime/mocks/cluster_configuration.go
    • flyteadmin/pkg/runtime/mocks/namespace_mapping_configuration.go
    • flyteadmin/pkg/workflowengine/mocks/flyte_workflow_builder.go
    • flyteadmin/pkg/workflowengine/mocks/workflow_executor.go
    • flyteadmin/scheduler/executor/mocks/executor.go
    • flyteadmin/scheduler/repositories/mocks/schedulable_entity_repo_interface.go
    • flyteadmin/scheduler/repositories/mocks/schedule_entities_snap_shot_repo_interface.go
    • flytecopilot/go.mod
    • flytecopilot/go.sum
    • flytectl/cmd/update/interfaces/mocks/updater.go
    • flytectl/go.mod
    • flytectl/go.sum
    • flytectl/pkg/docker/mocks/docker.go
    • flytectl/pkg/ext/mocks/admin_deleter_ext_interface.go
    • flytectl/pkg/ext/mocks/admin_fetcher_ext_interface.go
    • flytectl/pkg/ext/mocks/admin_updater_ext_interface.go
    • flytectl/pkg/github/mocks/gh_repo_service.go
    • flytectl/pkg/k8s/mocks/context_ops.go
    • flytectl/pkg/visualize/mocks/graphvizer.go
    • flyteidl/clients/go/admin/cache/mocks/token_cache.go
    • flyteidl/clients/go/admin/mocks/AdminServiceClient.go
    • flyteidl/clients/go/admin/mocks/AdminServiceServer.go
    • flyteidl/clients/go/admin/mocks/AgentMetadataServiceClient.go
    • flyteidl/clients/go/admin/mocks/AgentMetadataServiceServer.go
    • flyteidl/clients/go/admin/mocks/AsyncAgentServiceClient.go
    • flyteidl/clients/go/admin/mocks/AsyncAgentServiceServer.go
    • flyteidl/clients/go/admin/mocks/AsyncAgentService_GetTaskLogsClient.go
    • flyteidl/clients/go/admin/mocks/AsyncAgentService_GetTaskLogsServer.go
    • flyteidl/clients/go/admin/mocks/AuthMetadataServiceClient.go
    • flyteidl/clients/go/admin/mocks/AuthMetadataServiceServer.go
    • flyteidl/clients/go/admin/mocks/DataProxyServiceClient.go
    • flyteidl/clients/go/admin/mocks/DataProxyServiceServer.go
    • flyteidl/clients/go/admin/mocks/ExternalPluginServiceClient.go
    • flyteidl/clients/go/admin/mocks/ExternalPluginServiceServer.go
    • flyteidl/clients/go/admin/mocks/IdentityServiceClient.go
    • flyteidl/clients/go/admin/mocks/IdentityServiceServer.go
    • flyteidl/clients/go/admin/mocks/SignalServiceClient.go
    • flyteidl/clients/go/admin/mocks/SignalServiceServer.go
    • flyteidl/clients/go/admin/mocks/SyncAgentServiceClient.go
    • flyteidl/clients/go/admin/mocks/SyncAgentServiceServer.go
    • flyteidl/clients/go/admin/mocks/SyncAgentService_ExecuteTaskSyncClient.go
    • flyteidl/clients/go/admin/mocks/SyncAgentService_ExecuteTaskSyncServer.go
    • flyteidl/clients/go/admin/mocks/TokenSource.go
    • flyteidl/clients/go/admin/mocks/UnsafeAdminServiceServer.go
    • flyteidl/clients/go/admin/mocks/UnsafeAgentMetadataServiceServer.go
    • flyteidl/clients/go/admin/mocks/UnsafeAsyncAgentServiceServer.go
    • flyteidl/clients/go/admin/mocks/UnsafeAuthMetadataServiceServer.go
    • flyteidl/clients/go/admin/mocks/UnsafeDataProxyServiceServer.go
    • flyteidl/clients/go/admin/mocks/UnsafeExternalPluginServiceServer.go
    • flyteidl/clients/go/admin/mocks/UnsafeIdentityServiceServer.go
    • flyteidl/clients/go/admin/mocks/UnsafeSignalServiceServer.go
    • flyteidl/clients/go/admin/mocks/UnsafeSyncAgentServiceServer.go
    • flyteidl/clients/go/admin/mocks/isCreateDownloadLinkRequest_Source.go
    • flyteidl/clients/go/admin/mocks/isGetDataResponse_Data.go
    • flyteidl/clients/go/cacheservice/mocks/CacheServiceClient.go
    • flyteidl/clients/go/datacatalog/mocks/DataCatalogClient.go
    • flyteidl/go.mod
    • flyteidl/go.sum
    • flyteplugins/go.mod
    • flyteplugins/go.sum
    • flyteplugins/go/tasks/pluginmachinery/catalog/mocks/async_client.go
    • flyteplugins/go/tasks/pluginmachinery/catalog/mocks/client.go
    • flyteplugins/go/tasks/pluginmachinery/catalog/mocks/download_future.go
    • flyteplugins/go/tasks/pluginmachinery/catalog/mocks/download_response.go
    • flyteplugins/go/tasks/pluginmachinery/catalog/mocks/future.go
    • flyteplugins/go/tasks/pluginmachinery/catalog/mocks/ready_handler.go
    • flyteplugins/go/tasks/pluginmachinery/catalog/mocks/upload_future.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/enqueue_owner.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/events_recorder.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/kube_client.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/plugin.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/plugin_loader.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/plugin_state_reader.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/plugin_state_writer.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/resource_manager.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/resource_registrar.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/secret_manager.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/setup_context.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/signal_async.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/task_execution_context.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/task_execution_id.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/task_execution_metadata.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/task_overrides.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/task_reader.go
    • flyteplugins/go/tasks/pluginmachinery/core/mocks/task_template_path.go
    • flyteplugins/go/tasks/pluginmachinery/internal/webapi/mocks/client.go
    • flyteplugins/go/tasks/pluginmachinery/io/mocks/checkpoint_paths.go
    • flyteplugins/go/tasks/pluginmachinery/io/mocks/error_reader.go
    • flyteplugins/go/tasks/pluginmachinery/io/mocks/input_file_paths.go
    • flyteplugins/go/tasks/pluginmachinery/io/mocks/input_reader.go
    • flyteplugins/go/tasks/pluginmachinery/io/mocks/output_file_paths.go
    • flyteplugins/go/tasks/pluginmachinery/io/mocks/output_reader.go
    • flyteplugins/go/tasks/pluginmachinery/io/mocks/output_writer.go
    • flyteplugins/go/tasks/pluginmachinery/io/mocks/raw_output_paths.go
    • flyteplugins/go/tasks/pluginmachinery/k8s/mocks/plugin.go
    • flyteplugins/go/tasks/pluginmachinery/k8s/mocks/plugin_abort_override.go
    • flyteplugins/go/tasks/pluginmachinery/k8s/mocks/plugin_context.go
    • flyteplugins/go/tasks/pluginmachinery/webapi/mocks/async_plugin.go
    • flyteplugins/go/tasks/pluginmachinery/webapi/mocks/delete_context.go
    • flyteplugins/go/tasks/pluginmachinery/webapi/mocks/get_context.go
    • flyteplugins/go/tasks/pluginmachinery/webapi/mocks/plugin_loader.go
    • flyteplugins/go/tasks/pluginmachinery/webapi/mocks/plugin_setup_context.go
    • flyteplugins/go/tasks/pluginmachinery/webapi/mocks/status_context.go
    • flyteplugins/go/tasks/pluginmachinery/webapi/mocks/sync_plugin.go
    • flyteplugins/go/tasks/pluginmachinery/webapi/mocks/task_execution_context.go
    • flyteplugins/go/tasks/pluginmachinery/webapi/mocks/task_execution_context_reader.go
    • flyteplugins/go/tasks/pluginmachinery/workqueue/mocks/indexed_work_queue.go
    • flyteplugins/go/tasks/pluginmachinery/workqueue/mocks/processor.go
    • flyteplugins/go/tasks/pluginmachinery/workqueue/mocks/work_item.go
    • flyteplugins/go/tasks/pluginmachinery/workqueue/mocks/work_item_info.go
    • flyteplugins/go/tasks/plugins/array/awsbatch/mocks/batch_service_client.go
    • flyteplugins/go/tasks/plugins/array/awsbatch/mocks/cache.go
    • flyteplugins/go/tasks/plugins/array/awsbatch/mocks/cache_key.go
    • flyteplugins/go/tasks/plugins/array/awsbatch/mocks/client.go
    • flyteplugins/go/tasks/plugins/hive/client/mocks/qubole_client.go
    • flyteplugins/go/tasks/plugins/presto/client/mocks/presto_client.go
    • flytepropeller/events/mocks/event_recorder.go
    • flytepropeller/events/mocks/event_sink.go
    • flytepropeller/events/mocks/node_event_recorder.go
    • flytepropeller/events/mocks/task_event_recorder.go
    • flytepropeller/events/mocks/workflow_event_recorder.go
    • flytepropeller/events/mocks/writer.go
    • flytepropeller/go.mod
    • flytepropeller/go.sum
    • flytepropeller/manager/shardstrategy/mocks/shard_strategy.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/BaseNode.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/BaseWorkflow.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/BaseWorkflowWithStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/EnqueueWorkflow.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableArrayNode.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableArrayNodeStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableBranchNode.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableBranchNodeStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableDynamicNodeStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableGateNode.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableGateNodeStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableIfBlock.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableNode.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableNodeStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableSubWorkflow.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableSubWorkflowNodeStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableTask.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableTaskNodeStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableWorkflow.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableWorkflowNode.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableWorkflowNodeStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableWorkflowStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutionTimeInfo.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/Meta.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/MetaExtended.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/Mutable.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/MutableArrayNodeStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/MutableBranchNodeStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/MutableDynamicNodeStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/MutableGateNodeStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/MutableNodeStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/MutableSubWorkflowNodeStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/MutableTaskNodeStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/MutableWorkflowNodeStatus.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/NodeGetter.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/NodeStatusGetter.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/NodeStatusVisitor.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/SubWorkflowGetter.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/TaskDetailsGetter.go
    • flytepropeller/pkg/compiler/common/mocks/interface_provider.go
    • flytepropeller/pkg/compiler/common/mocks/node.go
    • flytepropeller/pkg/compiler/common/mocks/node_builder.go
    • flytepropeller/pkg/compiler/common/mocks/task.go
    • flytepropeller/pkg/compiler/common/mocks/workflow.go
    • flytepropeller/pkg/compiler/common/mocks/workflow_builder.go
    • flytepropeller/pkg/controller/executors/mocks/client.go
    • flytepropeller/pkg/controller/executors/mocks/control_flow.go
    • flytepropeller/pkg/controller/executors/mocks/dag_structure.go
    • flytepropeller/pkg/controller/executors/mocks/dag_structure_with_start_node.go
    • flytepropeller/pkg/controller/executors/mocks/execution_context.go
    • flytepropeller/pkg/controller/executors/mocks/immutable_execution_context.go
    • flytepropeller/pkg/controller/executors/mocks/immutable_parent_info.go
    • flytepropeller/pkg/controller/executors/mocks/node_lookup.go
    • flytepropeller/pkg/controller/executors/mocks/parent_info_getter.go
    • flytepropeller/pkg/controller/executors/mocks/sub_workflow_getter.go
    • flytepropeller/pkg/controller/executors/mocks/task_details_getter.go
    • flytepropeller/pkg/controller/executors/mocks/workflow.go
    • flytepropeller/pkg/controller/mocks/limiter.go
    • flytepropeller/pkg/controller/mocks/reservation.go
    • flytepropeller/pkg/controller/nodes/array/mocks/array_event_recorder.go
    • flytepropeller/pkg/controller/nodes/dynamic/mocks/task_node_handler.go
    • flytepropeller/pkg/controller/nodes/gate/mocks/signal_service_client.go
    • flytepropeller/pkg/controller/nodes/interfaces/mocks/cacheable_node_handler.go
    • flytepropeller/pkg/controller/nodes/interfaces/mocks/event_recorder.go
    • flytepropeller/pkg/controller/nodes/interfaces/mocks/handler_factory.go
    • flytepropeller/pkg/controller/nodes/interfaces/mocks/node.go
    • flytepropeller/pkg/controller/nodes/interfaces/mocks/node_execution_context.go
    • flytepropeller/pkg/controller/nodes/interfaces/mocks/node_execution_context_builder.go
    • flytepropeller/pkg/controller/nodes/interfaces/mocks/node_execution_metadata.go
    • flytepropeller/pkg/controller/nodes/interfaces/mocks/node_executor.go
    • flytepropeller/pkg/controller/nodes/interfaces/mocks/node_handler.go
    • flytepropeller/pkg/controller/nodes/interfaces/mocks/node_state_reader.go
    • flytepropeller/pkg/controller/nodes/interfaces/mocks/node_state_writer.go
    • flytepropeller/pkg/controller/nodes/interfaces/mocks/setup_context.go
    • flytepropeller/pkg/controller/nodes/interfaces/mocks/task_reader.go
    • flytepropeller/pkg/controller/nodes/mocks/output_resolver.go
    • flytepropeller/pkg/controller/nodes/recovery/mocks/client.go
    • flytepropeller/pkg/controller/nodes/subworkflow/launchplan/mocks/executor.go
    • flytepropeller/pkg/controller/nodes/subworkflow/launchplan/mocks/flyte_admin.go
    • flytepropeller/pkg/controller/nodes/subworkflow/launchplan/mocks/reader.go
    • flytepropeller/pkg/controller/nodes/task/resourcemanager/mocks/redis_client.go
    • flytepropeller/pkg/controller/workflowstore/mocks/FlyteWorkflow.go
    • flytepropeller/pkg/webhook/mocks/global_secret_provider.go
    • flytepropeller/pkg/webhook/mocks/mutator.go
    • flytepropeller/pkg/webhook/mocks/secrets_injector.go
    • flytestdlib/cache/mocks/AutoRefresh.go
    • flytestdlib/cache/mocks/CreateBatchesFunc.go
    • flytestdlib/cache/mocks/Item.go
    • flytestdlib/cache/mocks/ItemWrapper.go
    • flytestdlib/cache/mocks/Option.go
    • flytestdlib/cache/mocks/SyncFunc.go
    • flytestdlib/cli/pflags/api/generator.go
    • flytestdlib/cli/pflags/api/utils.go
    • flytestdlib/fastcheck/mocks/filter.go
    • flytestdlib/go.mod
    • flytestdlib/go.sum
    • flytestdlib/random/mocks/comparable.go
    • flytestdlib/random/mocks/weighted_random_list.go
    • flytestdlib/storage/mocks/composed_protobuf_store.go
    • flytestdlib/storage/mocks/raw_store.go
    • flytestdlib/storage/mocks/reference_constructor.go
    • flytestdlib/utils/mocks/auto_refresh_cache.go
    • flytestdlib/utils/mocks/cache_item.go
    • flytestdlib/utils/mocks/cache_sync_item.go
    • flytestdlib/utils/mocks/rate_limiter.go
    • flytestdlib/utils/mocks/sequencer.go
    • go.mod
    • go.sum
  • Files skipped - 0
  • Tools
    • Golangci-lint (Linter) - ✖︎ Failed
    • Whispers (Secret Scanner) - ✔︎ Successful
    • Detect-secrets (Secret Scanner) - ✔︎ Successful

AI Code Review powered by Bito Logo

flyte-bot avatar Feb 28 '25 06:02 flyte-bot

Changelist by Bito

This pull request implements the following key changes.

Key Change Files Impacted
Other Improvements - Docker and Build Config Upgrades

Dockerfile - Updated base image from Go 1.22 to 1.23 (bookworm) for flytebuilder.

Dockerfile.datacatalog - Switched alpine image from Go 1.22-alpine3.18 to 1.23-alpine3.21.

Dockerfile.flyteadmin - Changed base image from Go 1.22-alpine3.18 to 1.23-alpine3.21.

Dockerfile.flytecopilot - Adjusted base image to Go 1.23-alpine3.21.

Dockerfile.flytepropeller - Adjusted base image to Go 1.23-alpine3.21.

Dockerfile.flytescheduler - Adjusted base image to Go 1.23-alpine3.21.

Dockerfile - Updated bootstrap image from Go 1.22-bullseye to 1.23-bullseye.

go.mod - Upgraded go directive to 1.23 for sandbox bootstrap.

Feature Improvement - Dependency and Module Upgrades

go.mod - Upgraded Go version from 1.22.1 to 1.23 and updated dependency versions including mockery and zerolog.

go.sum - Reflected dependency upgrades by updating module checksums and removing obsolete entries.

go.mod - Upgraded go version and bumped key dependency versions (e.g. golang.org/x/crypto, x/net, x/sync, x/term, x/text).

go.sum - Updated dependency checksums to match new dependency versions.

go.mod - Changed Go version to 1.23 and upgraded dependencies such as golang.org/x/net, x/sync, and x/tools.

go.sum - Aligned dependency checksums with the new Go version and dependency upgrades.

go.mod - Updated Go version to 1.23 and bumped dependency versions (e.g. golang.org/x/crypto from v0.31.0 to v0.33.0).

go.sum - Updated dependency checksums in accordance with the new module versions.

go.mod - Adjusted Go version and dependency declarations (including golang.org/x/text upgrade) to support Go 1.23.

go.sum - Reflected dependency checksum changes corresponding to updated module declarations.

go.mod - Upgraded Go version from 1.22 to 1.23 with updated key dependency versions.

go.sum - Updated dependency checksums for golang.org/x packages.

go.mod - Upgraded Go version to 1.23 and updated dependency versions.

go.sum - Adjusted dependency checksums following module upgrades.

go.mod - Updated Go version to 1.23 and upgraded dependencies and modules.

go.sum - Adjusted dependency checksums following Go 1.23 module upgrades.

go.mod - Bumped Go version to 1.23 and updated dependency references.

go.sum - Adjusted dependency checksums for the Go 1.23 module upgrades.

go.mod - Updated go.mod: upgraded Go version to 1.23, added toolchain directive, and bumped various golang.org/x dependencies.

go.sum - Updated go.sum with new dependency checksums reflecting package version upgrades.

Testing - Mock Generation and Interface Updates

workflow.go - Simplified mock comments by changing descriptors from 'with given fields' to 'with no fields' for GetNodes, GetTasks, and GetUpstreamNodes.

workflow_builder.go - Updated generated header to mockery v2.52.1 and replaced _c.Call.Return with _c.Run across multiple functions.

client.go - Updated mock headers and function comments to a no-fields style for GetCache and GetClient.

control_flow.go - Revised control flow mock comments to adopt a no-fields style.

dag_structure.go - Refreshed the mock header to mockery v2.52.1.

dag_structure_with_start_node.go - Regenerated header and updated interface mocks to remove field descriptions.

execution_context.go - Refactored execution context mocks to use no-fields comments and replaced Call.Return with Run.

immutable_execution_context.go - Standardized immutable execution context mocks to the new mockery version with no-fields comment style.

immutable_parent_info.go - Updated immutable parent info mocks to remove field descriptors.

node_lookup.go - Regenerated the mock header.

parent_info_getter.go - Updated parent info getter mocks to a no-fields style.

sub_workflow_getter.go - Refreshed the mock header.

task_details_getter.go - Regenerated the mock header.

workflow.go - Regenerated the mock header.

limiter.go - Updated limiter mocks by replacing _c.Call.Return with _c.Run and using a no-fields function comment style.

reservation.go - Regenerated reservation mocks and updated function comments to remove field specifications.

array_event_recorder.go - Refreshed the mock header.

task_node_handler.go - Updated task node handler mock to adopt a no-fields comment style for FinalizeRequired.

signal_service_client.go - Regenerated the signal service client mock header.

cacheable_node_handler.go - Updated cacheable node handler mock to use no-fields comments and consolidated FinalizeRequired updates.

event_recorder.go - Refreshed the event recorder mock header.

handler_factory.go - Regenerated the handler factory mock header.

node.go - Regenerated the node mock header and updated GetNodeExecutionContextBuilder to a no-fields style.

node_execution_context.go - Refactored node execution context mocks by removing field descriptors and replacing Call.Return with Run across multiple functions.

node_execution_context_builder.go - Regenerated the node execution context builder mock.

node_execution_metadata.go - Updated mock comments for metadata functions to remove given fields.

node_executor.go - Upgraded mock header generated by mockery to v2.52.1.

node_handler.go - Updated mock header and function comments to a no-fields style.

node_state_reader.go - Replaced given fields comments with no-fields style in node state reader mocks.

node_state_writer.go - Updated node state writer mock file to use no-fields comments.

setup_context.go - Refactored setup context mocks to remove field descriptions.

task_reader.go - Updated task reader mocks to adopt no-fields comment style.

output_resolver.go - Upgraded mock header to mockery v2.52.1.

client.go - Updated recovery client mocks to remove field descriptors.

executor.go - Regenerated launch plan executor mock header.

flyte_admin.go - Updated flyte admin mocks to no-fields style.

reader.go - Regenerated launch plan reader mock header.

redis_client.go - Updated redis client mocks to adopt no-fields style.

FlyteWorkflow.go - Upgraded workflow store mocks to new mockery version.

global_secret_provider.go - Updated global secret provider mock header.

mutator.go - Refactored mutator mocks to use no-fields comments.

secrets_injector.go - Updated secrets injector mocks to no-fields style.

AutoRefresh.go - Upgraded cache auto refresh mock header to mockery v2.52.1.

CreateBatchesFunc.go - Upgraded create batches function mock header.

Item.go - Refreshed item mock header and updated IsTerminal function comment.

ItemWrapper.go - Updated item wrapper mocks to no-fields comment style.

Option.go - Replaced _c.Call.Return with _c.Run in option mocks.

SyncFunc.go - Upgraded sync function mock header.

filter.go - Updated filter mocks to new mockery version.

comparable.go - Upgraded comparable mock header to v2.52.1.

weighted_random_list.go - Refactored weighted random list mocks to use no-fields comments.

composed_protobuf_store.go - Updated composed protobuf store mock header.

raw_store.go - Upgraded raw store mocks to support Go 1.23.

reference_constructor.go - Refreshed reference constructor mock header.

auto_refresh_cache.go - Updated auto-refresh cache mock to replace Call.Return with Run.

cache_item.go - Changed mock comment from 'with given fields' to 'with no fields', refreshing header as needed.

cache_sync_item.go - Updated generated mock header to mockery v2.52.1.

rate_limiter.go - Updated generated mock header to mockery v2.52.1.

sequencer.go - Updated mock header to mockery v2.52.1 and refined function comments to no-fields style.

flyte-bot avatar Feb 28 '25 08:02 flyte-bot

Can we separate the move to go 1.23 from the bump in mockery version? Since moving to this new version is non-controversial, how about we do it separately (either make the go1.23 changes happen in a stacked PR or, my preference, move to that mockery version in a separate PR and merge that sooner).

eapolinario avatar Mar 03 '25 17:03 eapolinario

Can we separate the move to go 1.23 from the bump in mockery version? Since moving to this new version is non-controversial, how about we do it separately (either make the go1.23 changes happen in a stacked PR or, my preference, move to that mockery version in a separate PR and merge that sooner).

Sure

Sovietaced avatar Mar 03 '25 17:03 Sovietaced

Can we separate the move to go 1.23 from the bump in mockery version? Since moving to this new version is non-controversial, how about we do it separately (either make the go1.23 changes happen in a stacked PR or, my preference, move to that mockery version in a separate PR and merge that sooner).

So I'm having trouble because it seems that the mockery libraries are tightly coupled with a very specific version of go. When I use the version of mockery that supports go 1.23 I'm running into this error like `2025/03/03 20:30:44 internal error: package "context" without types was imported from "github.com/flyteorg/flyte/flytestdlib/utils".

I even tried the earliest version that supports the go 1.23 type aliasing, v2.46.1.

ie: https://vektra.github.io/mockery/latest/notes/#internal-error-package-without-types-was-imported

Sovietaced avatar Mar 04 '25 04:03 Sovietaced

So I'm having trouble because it seems that the mockery libraries are tightly coupled with a very specific version of go. When I use the version of mockery that supports go 1.23 I'm running into this error like `2025/03/03 20:30:44 internal error: package "context" without types was imported from "github.com/flyteorg/flyte/flytestdlib/utils".

I even tried the earliest version that supports the go 1.23 type aliasing, v2.46.1.

ie: https://vektra.github.io/mockery/latest/notes/#internal-error-package-without-types-was-imported

Hmm. I can't even run make generate on main so it might be a local issue :)

Sovietaced avatar Mar 04 '25 04:03 Sovietaced

Can we separate the move to go 1.23 from the bump in mockery version? Since moving to this new version is non-controversial, how about we do it separately (either make the go1.23 changes happen in a stacked PR or, my preference, move to that mockery version in a separate PR and merge that sooner).

Alright I can't really land the mockery changes in a separate PR since newer versions of mockery require new versions of go.

~/code/flyte/flytestdlib git:[update-mockery] make generate
Makefile:19: warning: overriding commands for target `generate'
../boilerplate/flyte/golang_test_targets/Makefile:14: warning: ignoring old commands for target `generate'
Makefile:31: warning: overriding commands for target `test_unit_codecov'
../boilerplate/flyte/golang_test_targets/Makefile:55: warning: ignoring old commands for target `test_unit_codecov'
Makefile:19: warning: overriding commands for target `generate'
../boilerplate/flyte/golang_test_targets/Makefile:14: warning: ignoring old commands for target `generate'
Makefile:31: warning: overriding commands for target `test_unit_codecov'
../boilerplate/flyte/golang_test_targets/Makefile:55: warning: ignoring old commands for target `test_unit_codecov'
mkdir -p ./bin
go build -o pflags ./cli/pflags/main.go && mv ./pflags ./bin
Using temp directory /var/folders/h0/cm6xy2g1463675c79_kb76l40000gn/T/gotooling-XXX.HmChxV6PGp
/var/folders/h0/cm6xy2g1463675c79_kb76l40000gn/T/gotooling-XXX.HmChxV6PGp ~/code/flyte/flytestdlib
Installing github.com/vektra/mockery/[email protected]
go: github.com/vektra/mockery/[email protected] requires go >= 1.24; switching to go1.24.0
Installing github.com/golangci/golangci-lint/cmd/golangci-lint
/Users/jasonparraga/go/pkg/mod/github.com/fatih/[email protected]/color.go:11:2: missing go.sum entry for module providing package github.com/mattn/go-colorable (imported by github.com/fatih/color); to add:
        go get github.com/fatih/[email protected]
......

I messed around with it for a few hours and different versions of mockery all have different issues but it seems like all the issues are rooted in the fact that you use a different version of go to generate the mocks then you do to use them.

Sovietaced avatar Mar 04 '25 05:03 Sovietaced

Code Review Agent Run #4df6c6

Actionable Suggestions - 0
Filtered by Review Rules

Bito filtered these suggestions based on rules created automatically for your feedback. Manage rules.

  • flytestdlib/utils/marshal_utils.go - 1
    • Error value incorrectly set to nil · Line 78-78
Review Details
  • Files reviewed - 175 · Commit Range: 3305736..6adfaea
    • boilerplate/flyte/golang_test_targets/download_tooling.sh
    • boilerplate/flyte/golang_test_targets/go-gen.sh
    • charts/flyte-binary/values.yaml
    • charts/flyte-core/values-keycloak-idp-flyteclients-without-browser.yaml
    • charts/flyte-core/values.yaml
    • charts/flyte/values.yaml
    • datacatalog/datacatalog_config.yaml
    • datacatalog/go.mod
    • datacatalog/go.sum
    • datacatalog/pkg/config/config.go
    • datacatalog/pkg/config/config_flags.go
    • datacatalog/pkg/config/config_flags_test.go
    • datacatalog/pkg/manager/interfaces/artifact.go
    • datacatalog/pkg/repositories/interfaces/artifact_repo.go
    • datacatalog/pkg/repositories/interfaces/dataset_repo.go
    • datacatalog/pkg/repositories/interfaces/partition_repo.go
    • datacatalog/pkg/repositories/interfaces/reservation_repo.go
    • datacatalog/pkg/repositories/interfaces/tag_repo.go
    • datacatalog/pkg/rpc/datacatalogservice/service.go
    • deployment/eks/flyte_aws_scheduler_helm_generated.yaml
    • deployment/eks/flyte_helm_controlplane_generated.yaml
    • deployment/eks/flyte_helm_generated.yaml
    • deployment/gcp/flyte_helm_controlplane_generated.yaml
    • deployment/gcp/flyte_helm_generated.yaml
    • deployment/sandbox/flyte_helm_generated.yaml
    • docker/sandbox-bundled/bootstrap/go.mod
    • docker/sandbox-bundled/bootstrap/go.sum
    • docker/sandbox-bundled/manifests/complete-agent.yaml
    • docker/sandbox-bundled/manifests/complete.yaml
    • docker/sandbox-bundled/manifests/dev.yaml
    • docs/deployment/configuration/auth_setup.rst
    • docs/deployment/configuration/cloud_event.rst
    • docs/deployment/configuration/eventing.rst
    • flyteadmin/auth/interfaces/context.go
    • flyteadmin/auth/interfaces/cookie.go
    • flyteadmin/go.mod
    • flyteadmin/go.sum
    • flyteadmin/pkg/async/cloudevent/interfaces/publisher.go
    • flyteadmin/pkg/async/cloudevent/interfaces/sender.go
    • flyteadmin/pkg/async/events/interfaces/node_execution.go
    • flyteadmin/pkg/async/events/interfaces/workflow_execution.go
    • flyteadmin/pkg/async/notifications/email.go
    • flyteadmin/pkg/async/notifications/email_test.go
    • flyteadmin/pkg/async/notifications/implementations/sendgrid_emailer.go
    • flyteadmin/pkg/async/notifications/interfaces/emailer.go
    • flyteadmin/pkg/async/notifications/interfaces/processor.go
    • flyteadmin/pkg/async/notifications/interfaces/publisher.go
    • flyteadmin/pkg/async/notifications/interfaces/smtp_client.go
    • flyteadmin/pkg/async/schedule/interfaces/event_scheduler.go
    • flyteadmin/pkg/async/schedule/interfaces/workflow_executor.go
    • flyteadmin/pkg/clusterresource/interfaces/admin.go
    • flyteadmin/pkg/data/interfaces/remote.go
    • flyteadmin/pkg/executioncluster/interfaces/execution_target_provider.go
    • flyteadmin/pkg/manager/impl/metrics_manager.go
    • flyteadmin/pkg/manager/interfaces/execution.go
    • flyteadmin/pkg/manager/interfaces/launch_plan.go
    • flyteadmin/pkg/manager/interfaces/metrics.go
    • flyteadmin/pkg/manager/interfaces/named_entity.go
    • flyteadmin/pkg/manager/interfaces/node_execution.go
    • flyteadmin/pkg/manager/interfaces/project.go
    • flyteadmin/pkg/manager/interfaces/resource.go
    • flyteadmin/pkg/manager/interfaces/signal.go
    • flyteadmin/pkg/manager/interfaces/task.go
    • flyteadmin/pkg/manager/interfaces/task_execution.go
    • flyteadmin/pkg/manager/interfaces/version.go
    • flyteadmin/pkg/manager/interfaces/workflow.go
    • flyteadmin/pkg/repositories/interfaces/execution_event_repo.go
    • flyteadmin/pkg/repositories/interfaces/node_execution_event_repo.go
    • flyteadmin/pkg/repositories/interfaces/signal_repo.go
    • flyteadmin/pkg/runtime/interfaces/cluster_configuration.go
    • flyteadmin/pkg/runtime/interfaces/cluster_pools.go
    • flyteadmin/pkg/runtime/interfaces/namespace_configuration.go
    • flyteadmin/pkg/runtime/interfaces/quality_of_service_configuration.go
    • flyteadmin/pkg/workflowengine/interfaces/builder.go
    • flyteadmin/pkg/workflowengine/interfaces/executor.go
    • flyteadmin/scheduler/executor/executor.go
    • flyteadmin/scheduler/repositories/interfaces/schedulable_entity_repo.go
    • flyteadmin/scheduler/repositories/interfaces/schedule_entities_snapshot_repo.go
    • flytectl/cmd/update/interfaces/updater.go
    • flytectl/docs/docs-requirements.txt
    • flytectl/docs/source/contribute.rst
    • flytectl/pkg/docker/docker.go
    • flytectl/pkg/ext/deleter.go
    • flytectl/pkg/ext/fetcher.go
    • flytectl/pkg/ext/updater.go
    • flytectl/pkg/github/githubutil.go
    • flytectl/pkg/k8s/k8s.go
    • flytectl/pkg/visualize/graphvizer.go
    • flyteidl/clients/go/admin/cache/token_cache.go
    • flyteidl/clients/go/admin/client.go
    • flyteidl/clients/go/admin/token_source_provider.go
    • flyteidl/gen/pb-es/flyteidl/admin/agent_pb.ts
    • flyteidl/gen/pb-es/flyteidl/admin/common_pb.ts
    • flyteidl/gen/pb-go/flyteidl/admin/agent.pb.go
    • flyteidl/gen/pb-go/flyteidl/admin/common.pb.go
    • flyteidl/gen/pb-go/flyteidl/admin/execution.pb.go
    • flyteidl/gen/pb-js/flyteidl.d.ts
    • flyteidl/gen/pb-js/flyteidl.js
    • flyteidl/gen/pb_python/flyteidl/admin/agent_pb2.py
    • flyteidl/gen/pb_python/flyteidl/admin/agent_pb2.pyi
    • flyteidl/gen/pb_python/flyteidl/admin/common_pb2.py
    • flyteidl/gen/pb_python/flyteidl/admin/common_pb2.pyi
    • flyteidl/gen/pb_python/flyteidl/admin/execution_pb2.py
    • flyteidl/gen/pb_rust/flyteidl.admin.rs
    • flyteidl/generate_mocks.sh
    • flyteidl/go.mod
    • flyteidl/go.sum
    • flyteidl/protos/flyteidl/admin/agent.proto
    • flyteidl/protos/flyteidl/admin/common.proto
    • flyteidl/protos/flyteidl/admin/execution.proto
    • flyteplugins/go/tasks/pluginmachinery/catalog/client.go
    • flyteplugins/go/tasks/pluginmachinery/core/exec_context.go
    • flyteplugins/go/tasks/pluginmachinery/core/exec_metadata.go
    • flyteplugins/go/tasks/pluginmachinery/core/plugin.go
    • flyteplugins/go/tasks/pluginmachinery/core/secret_manager.go
    • flyteplugins/go/tasks/pluginmachinery/internal/webapi/cache.go
    • flyteplugins/go/tasks/pluginmachinery/io/iface.go
    • flyteplugins/go/tasks/pluginmachinery/k8s/plugin.go
    • flyteplugins/go/tasks/pluginmachinery/webapi/plugin.go
    • flyteplugins/go/tasks/pluginmachinery/workqueue/queue.go
    • flyteplugins/go/tasks/plugins/array/awsbatch/client.go
    • flyteplugins/go/tasks/plugins/array/core/state.go
    • flyteplugins/go/tasks/plugins/array/k8s/subtask_exec_context.go
    • flyteplugins/go/tasks/plugins/hive/client/qubole_client.go
    • flyteplugins/go/tasks/plugins/presto/client/presto_client.go
    • flyteplugins/go/tasks/plugins/webapi/agent/config.go
    • flyteplugins/go/tasks/plugins/webapi/agent/config_test.go
    • flyteplugins/go/tasks/plugins/webapi/agent/plugin.go
    • flytepropeller/events/node_event_recorder.go
    • flytepropeller/events/task_event_recorder.go
    • flytepropeller/events/workflow_event_recorder.go
    • flytepropeller/manager/shardstrategy/shard_strategy.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/array.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/iface.go
    • flytepropeller/pkg/apis/flyteworkflow/v1alpha1/mocks/ExecutableArrayNode.go
    • flytepropeller/pkg/compiler/common/builder.go
    • flytepropeller/pkg/compiler/transformers/k8s/node.go
    • flytepropeller/pkg/controller/executors/dag_structure.go
    • flytepropeller/pkg/controller/executors/execution_context.go
    • flytepropeller/pkg/controller/executors/kube.go
    • flytepropeller/pkg/controller/executors/node_lookup.go
    • flytepropeller/pkg/controller/executors/workflow.go
    • flytepropeller/pkg/controller/interfaces/rate_limiter.go
    • flytepropeller/pkg/controller/nodes/array/handler.go
    • flytepropeller/pkg/controller/nodes/array/handler_test.go
    • flytepropeller/pkg/controller/nodes/array/node_execution_context.go
    • flytepropeller/pkg/controller/nodes/array/node_execution_context_test.go
    • flytepropeller/pkg/controller/nodes/branch/handler.go
    • flytepropeller/pkg/controller/nodes/branch/handler_test.go
    • flytepropeller/pkg/controller/nodes/dynamic/handler.go
    • flytepropeller/pkg/controller/nodes/executor.go
    • flytepropeller/pkg/controller/nodes/gate/handler.go
    • flytepropeller/pkg/controller/nodes/interfaces/handler.go
    • flytepropeller/pkg/controller/nodes/interfaces/handler_factory.go
    • flytepropeller/pkg/controller/nodes/interfaces/node.go
    • flytepropeller/pkg/controller/nodes/interfaces/node_exec_context.go
    • flytepropeller/pkg/controller/nodes/output_resolver.go
    • flytepropeller/pkg/controller/nodes/recovery/client.go
    • flytepropeller/pkg/controller/nodes/subworkflow/launchplan/launchplan.go
    • flytepropeller/pkg/controller/nodes/task/resourcemanager/redis_client.go
    • flytepropeller/pkg/controller/workflowstore/iface.go
    • flytepropeller/pkg/webhook/aws_secret_manager.go
    • flytepropeller/pkg/webhook/aws_secret_manager_test.go
    • flytepropeller/pkg/webhook/global_secrets.go
    • flytestdlib/cache/auto_refresh.go
    • flytestdlib/fastcheck/iface.go
    • flytestdlib/go.mod
    • flytestdlib/go.sum
    • flytestdlib/pbhash/pbhash.go
    • flytestdlib/random/weighted_random_list.go
    • flytestdlib/storage/storage.go
    • flytestdlib/utils/auto_refresh_cache.go
    • flytestdlib/utils/marshal_utils.go
    • go.mod
    • go.sum
  • Files skipped - 11
    • .github/workflows/single-binary.yml - Reason: Filter setting
    • charts/flyte-binary/README.md - Reason: Filter setting
    • charts/flyte-core/README.md - Reason: Filter setting
    • charts/flyte/README.md - Reason: Filter setting
    • codecov.yml - Reason: Filter setting
    • docs/user_guide/advanced_composition/eager_workflows.md - Reason: Filter setting
    • docs/user_guide/productionizing/secrets.md - Reason: Filter setting
    • flyteidl/clients/go/assets/admin.swagger.json - Reason: Filter setting
    • flyteidl/gen/pb-go/gateway/flyteidl/service/admin.swagger.json - Reason: Filter setting
    • flyteidl/gen/pb-go/gateway/flyteidl/service/agent.swagger.json - Reason: Filter setting
    • rfc/system/RFC-5659-execution-concurrency.md - Reason: Filter setting
  • Tools
    • Whispers (Secret Scanner) - ✔︎ Successful
    • Detect-secrets (Secret Scanner) - ✔︎ Successful

Bito Usage Guide

Commands

Type the following command in the pull request comment and save the comment.

  • /review - Manually triggers a full AI review.

Refer to the documentation for additional commands.

Configuration

This repository uses code_review_bito You can customize the agent settings here or contact your Bito workspace admin at [email protected].

Documentation & Help

AI Code Review powered by Bito Logo

flyte-bot avatar Mar 14 '25 05:03 flyte-bot

It would be awesome if this could make it into the next Flyte release -- we're stuck with some vulns in things like x/crypto as the fixes require 1.23+ now

ddl-ebrown avatar Apr 16 '25 17:04 ddl-ebrown

Bito Automatic Review Failed - Technical Failure

Bito encountered technical difficulties while generating code feedback . To retry, type /review in a comment and save. If the issue persists, contact [email protected] and provide the following details:

Agent Run ID: 9408d770-36f9-4dd5-8d6f-dce91ccc14d4

flyte-bot avatar Aug 22 '25 20:08 flyte-bot