Skip to content

Conversation

@dazuma
Copy link
Owner

@dazuma dazuma commented Dec 2, 2025

No description provided.

@dazuma dazuma requested a review from Copilot December 2, 2025 05:25
Copilot finished reviewing on behalf of dazuma December 2, 2025 05:29
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds support for different collision handling strategies when copying files during the release pipeline execution. The feature allows users to specify how to handle situations where a file or directory being copied already exists at the destination.

  • Introduces a collisions parameter with three options: "error" (default), "replace", and "keep"
  • Updates both declarative configuration (via repo settings) and imperative API (step methods)
  • Directory-on-directory collisions always merge, while other collision types respect the specified mode

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.

File Description
toys-release/toys/.test/test_repo_settings.rb Improved test description from class name to behavior description
toys-release/toys/.test/test_pipeline.rb Comprehensive test coverage for collision handling in both input pulling and output pushing scenarios
toys-release/toys/.lib/toys/release/repo_settings.rb Added collisions field to InputSettings and OutputSettings classes with default value "error"
toys-release/toys/.lib/toys/release/pipeline.rb Implemented collision handling logic in copy_tree method and added collisions parameter to copy_from_input and copy_to_output methods

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@dazuma dazuma merged commit 559922e into main Dec 2, 2025
18 checks passed
@dazuma dazuma deleted the pr/release-collisions branch December 2, 2025 05:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants