Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

incompatible_remote_output_paths_relative_to_input_root #15131

Open
coeuvre opened this issue Mar 28, 2022 · 3 comments
Open

incompatible_remote_output_paths_relative_to_input_root #15131

coeuvre opened this issue Mar 28, 2022 · 3 comments
Labels
breaking-change-8.0 incompatible-change Incompatible/breaking change P2 We'll consider working on this in future. (Assignee optional) team-Remote-Exec Issues and PRs for the Execution (Remote) team type: process

Comments

@coeuvre
Copy link
Member

coeuvre commented Mar 28, 2022

Background

REAPI didn't make it clear for the server implementations on how to interpret the output paths i.e. should the output path relative to input root or working directory? bazelbuild/remote-apis#127

With some changes, the spec is now quite clear about output paths being working directory-relative. But some implementations (correctly) implement to the spec, and others implement input root-relative semantics. bazelbuild/remote-apis#191

Bazel changes

Bazel had not been affected by this semantics issue since the working_directory field was not set (which implies working directory is input root) until --experimental_sibling_repository_layout was introduced. When it is enabled, input root will be the parent directory of execRoot, and working directory is execRoot.

Incompatible flag --incompatible_remote_output_paths_relative_to_input_root was then introduced by #13339 to allow projects which enable --experimental_sibling_repository_layout can be built on remote servers which implement input root-relative semantic.

Migration

If you don't use --experimental_sibling_repository_layout, no migration is needed.

Otherwise, update remote server to the working directory-relative semantic. Before that, set --incompatible_remote_output_paths_relative_to_input_root to true.

Expected timeline

N/A.

This flag will NOT be flipped and should be removed once we know that all major remote servers have migrated to the working directory-relative semantic.

More context

  • b/151716198
@coeuvre coeuvre added P2 We'll consider working on this in future. (Assignee optional) incompatible-change Incompatible/breaking change team-Remote-Exec Issues and PRs for the Execution (Remote) team labels Mar 28, 2022
@meteorcloudy
Copy link
Member

@coeuvre Should we flip this flag for 6.0?

@coeuvre
Copy link
Member Author

coeuvre commented Sep 15, 2022

As mentioned above:

This flag will NOT be flipped and should be removed once we know that all major remote servers have migrated to the working directory-relative semantic.

@coeuvre
Copy link
Member Author

coeuvre commented Sep 2, 2024

We are going to remove this flag from Bazel 8.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking-change-8.0 incompatible-change Incompatible/breaking change P2 We'll consider working on this in future. (Assignee optional) team-Remote-Exec Issues and PRs for the Execution (Remote) team type: process
Projects
None yet
Development

No branches or pull requests

3 participants