Page MenuHomePhabricator

Arc applying patches on the wrong repository
Closed, DuplicatePublic

Description

We have two repositories for project A and B. Project B depends on A. When we create diffs for B it happens that we add a dependency on a diff for A. Suppose that DX01 for project B depends on DX00 for project A. When we do arc patch DX01arc try to apply DX00 on project B.

Arcanist : 9e82ef979e8148c43b9b8439025d505b1219e213

Event Timeline

chad added a subscriber: chad.

Bug reports require clear, easy to reproduce, set of steps anyone can follow. Please read Contributing Bug Reports for how to file a complete bug report.

chad added a comment.Sep 29 2016, 2:36 PM

Vaguely, it sounds likely you're expecting arcanist to be able to apply multiple patches to multiple repositories, which I don't think is a feature.

I didn't suggest that. A solution can be to not apply that patch and inform the user about that.

chad added a comment.Sep 29 2016, 2:48 PM

A solution to what?

Applying a patch on the wrong repository.

chad added a comment.Sep 29 2016, 3:02 PM

Sorry if I'm not being clear. This is currently not a valid bug report. Please completely and clearly follow the steps in Contributing Bug Reports. The point of this documentation is to reduce the amount of time the upstream spends on bugs. Having clear communication upfront means we don't have to spend 3x the time trying to get the details afterwards.

Sorry I though I was clear on how you could reproduce the bug. I will try again

  1. Create two repositories A and B
  2. Create a Diff DX00 for repository A
  3. Create a diff DX01 for repository B
  4. Create a dependency between DX00 and DX01. DX01 depends on DX00
  5. Try arc patch DX01

The patch won't succeed because arcanist is trying to apply DX00 on the wrong repository.

Please provide informations about what wasn't clear in my report.

chad added a comment.Sep 29 2016, 5:58 PM

Sorry, these steps are vague and incomplete. We don't take bug reports like this and our documentation at Contributing Bug Reports is very clear on what information is required.

Our expectations, since the product is free and support is free, is users will help us out with a few extra minutes of time, and in return save us several hours.

chad added a comment.Sep 29 2016, 6:09 PM

Specifically

  • "Try arc patch" is vague, I don't know where you're running it
  • Version information is required on reports, I don't know what version your running
  • Observed behavior / Expected behavior - I don't know what the error message was, or what happened, nor what you expected to happen. We expect to get a copy of the error if one was present, etc.
chad added a comment.Sep 29 2016, 6:10 PM

(off hand this may be a duplicate of T8307)

Sorry I though I was clear on how you could reproduce the bug. I will try again

  1. Create two repositories A and B
  2. create file F1 (this file shouldn't be repository B) in repository A and do commit and push
  3. change file F1 and commit the changes
  4. Create a diff DX00 with the previous commit
  5. Create a diff DX01 for repository B
  6. Create a dependency between DX00 and DX01. DX01 depends on DX00
  7. Try arc patch DX01 in repository B

The patch won't succeed and git complain about missing file F1. That missing file is in repository A.

Arcanist : 9e82ef979e8148c43b9b8439025d505b1219e213
libphuti: 19ef6e504d2679b242b9e895868dd803983b622a
Phabricator: 36fa4e53806357dc04613c0b75eb844dc5c60dc7

The problem and solution are in T8307#116152

chad added a comment.Sep 29 2016, 7:37 PM

Ahhhhhh, awesome thanks! I'll merge this over.