Page MenuHomePhabricator

Allow differential changesets to be marked as generated via diff properties
AbandonedPublic

Authored by joshuaspence on Jan 28 2015, 8:42 AM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Apr 25, 1:58 AM
Unknown Object (File)
Tue, Apr 16, 8:51 PM
Unknown Object (File)
Wed, Apr 3, 11:39 PM
Unknown Object (File)
Mon, Apr 1, 1:54 AM
Unknown Object (File)
Sun, Mar 31, 5:41 AM
Unknown Object (File)
Fri, Mar 29, 10:22 PM
Unknown Object (File)
Mar 20 2024, 3:40 PM
Unknown Object (File)
Feb 8 2024, 11:01 AM
Subscribers
Tokens
"Love" token, awarded by dentafrice."Love" token, awarded by cbrauchli.

Details

Summary

Ref T784. Allow differential changesets to be marked as generated with a DifferentialDiffProperty. The expectation is that arc diff will submit an arc:generated diff property (which will be populated out of the local .arcconfig file). These paths will then be automatically marked as generated when rendering the differential changeset.

Currently, the only way to achieve this is with differential.generated-paths. The main issue with differential.generated-paths is that it is a global setting and cannot be varied across repositories. A natural extension from differential.generated-paths would be to move this configuration into the per-repository configuration, however I feel that this approach would be too inflexible to be useful. Specifically, this setting would need to be updated whenever generated paths are added/removed/changed for a particular repository (although I would expect this to be a fairly infrequent occurrence).

Unfortunately, this functionality will not be retrofitted to existing differentials. We could possibly add a migration which populates arc:generated for all existing differentials based on the value of differential.generated-paths, although I'm not convinced that this is worth pursuing.

Test Plan

Uploaded a diff (using arc diff) and set paths for arc:generated with arc call-conduit 'differential.setdiffproperty'. Loaded the differential in the UI and noticed that the paths were marked as generated as expected.

One interesting thing to note (I'm not sure if I would consider this to be a bug or expected behavior) is that lint messages takes a higher precedence over generated paths. If a path matches a regular expression in arc:generated but has some linter messages associated with that path, then the file will not be shown as generated in the UI. This is mainly an issue until after D11537.

Diff Detail

Repository
rP Phabricator
Branch
master
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 6659
Build 6681: [Placeholder Plan] Wait for 30 Seconds

Event Timeline

joshuaspence retitled this revision from to Allow differential changesets to be marked as generated with diff properties.
joshuaspence updated this object.
joshuaspence edited the test plan for this revision. (Show Details)
joshuaspence added a reviewer: epriestley.
joshuaspence retitled this revision from Allow differential changesets to be marked as generated with diff properties to Allow differential changesets to be marked as generated via diff properties.Feb 1 2015, 9:10 PM
joshuaspence edited the test plan for this revision. (Show Details)
joshuaspence edited the test plan for this revision. (Show Details)
src/applications/differential/parser/DifferentialChangesetParser.php
518–522

Is there a better way to mark a PhabricatorConfigOption as deprecated?

joshuaspence updated this object.
joshuaspence edited the test plan for this revision. (Show Details)
joshuaspence edited the test plan for this revision. (Show Details)
joshuaspence marked an inline comment as done.

Move differential.generated-paths to PhabricatorExtraConfigSetupCheck

Nevermind... I already do this in D11538