mirror of
https://we.phorge.it/source/arcanist.git
synced 2024-11-22 14:52:40 +01:00
No description
02e4a690dd
Summary: Completes T3859. This implements a C# linter for Arcanist, which in turn uses `cslint` from `cstools` to actually perform the linting. `cslint` internally uses StyleCop in addition to it's own lint rules. Unlike other linters, C# is a compiled language, which means that the StyleCop integration must be aware of the full project. To this end, there is the `discovery` setting in `.arclint`. This allows users to define mappings between C# files and the projects they belong to. Here is an configuration for `.arclint` (and is the one we use): ``` { "linters": { "csharp": { "type": "csharp", "include": "(\\.cs$)", "binary": "cstools/cslint/bin/Debug/cslint.exe", "discovery": { "([^/]+)/(.*?)\\.cs": [ "$1/$1.Linux.csproj" ], "([^\\\\]+)\\\\(.*?)\\.cs": [ "$1\\$1.Windows.csproj" ] } } } } ``` Test Plan: Tested under both Linux and Windows. Changed some files, ran `arc lint` and it all worked correctly. Reviewers: epriestley Reviewed By: epriestley CC: Korvin, aran, jamesr Maniphest Tasks: T3859 Differential Revision: https://secure.phabricator.com/D7170 |
||
---|---|---|
bin | ||
externals | ||
resources | ||
scripts | ||
src | ||
.arcconfig | ||
.divinerconfig | ||
.editorconfig | ||
.gitignore | ||
LICENSE | ||
NOTICE | ||
README |
WHAT IS ARCANIST? Arcanist is the command-line tool for Phabricator. It allows you to interact with Phabricator installs to send code for review, download patches, transfer files, view status, make API calls, and various other things. You can find a complete user guide here: http://www.phabricator.com/docs/phabricator/article/Arcanist_User_Guide.html For more information about Phabricator, see: http://phabricator.org/ LICENSE Arcanist is released under the Apache 2.0 license except as otherwise noted.