[llvm] 03f150b - Removes arcanist and Phabricator information. (#82115)

via llvm-commits llvm-commits at lists.llvm.org
Sun Mar 3 07:18:39 PST 2024


Author: Mark de Wever
Date: 2024-03-03T16:18:35+01:00
New Revision: 03f150bb5688be72ae4dfb43fbe6795aae493e6d

URL: https://github.com/llvm/llvm-project/commit/03f150bb5688be72ae4dfb43fbe6795aae493e6d
DIFF: https://github.com/llvm/llvm-project/commit/03f150bb5688be72ae4dfb43fbe6795aae493e6d.diff

LOG: Removes arcanist and Phabricator information. (#82115)

Removes old arcanist configuration files and documentation of
Phabricator. This only removes the data that seems save to remove.

Added: 
    

Modified: 
    llvm/docs/Contributing.rst
    llvm/docs/DeveloperPolicy.rst
    llvm/docs/UserGuides.rst

Removed: 
    .arcconfig
    .arclint
    llvm/docs/Phabricator.rst
    llvm/docs/Phabricator_premerge_results.png
    llvm/docs/Phabricator_premerge_unit_tests.png
    utils/arcanist/clang-format.sh


################################################################################
diff  --git a/.arcconfig b/.arcconfig
deleted file mode 100644
index e200298f603e5e..00000000000000
--- a/.arcconfig
+++ /dev/null
@@ -1,8 +0,0 @@
-{
-  "phabricator.uri" : "https://reviews.llvm.org/",
-  "repository.callsign" : "G",
-  "conduit_uri" : "https://reviews.llvm.org/",
-  "base": "git:HEAD^",
-  "arc.land.onto.default": "main",
-  "arc.land.onto": ["main"]
-}

diff  --git a/.arclint b/.arclint
deleted file mode 100644
index 27d838eb153f2a..00000000000000
--- a/.arclint
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "linters": {
-    "clang-format": {
-      "type": "script-and-regex",
-      "script-and-regex.script": "bash utils/arcanist/clang-format.sh",
-      "script-and-regex.regex": "/^(?P<severity>[[:alpha:]]+)\n(?P<message>[^\n]+)\n(====|(?P<line>\\d),(?P<char>\\d)\n(?P<original>.*)>>>>\n(?P<replacement>.*)<<<<\n)$/s",
-      "include": [
-        "(\\.(cc|cpp|h)$)"
-      ],
-      "exclude": [
-        "(^clang/test/)"
-      ]
-    }
-  }
-}

diff  --git a/llvm/docs/Contributing.rst b/llvm/docs/Contributing.rst
index 05521684517524..dc8be93463cec1 100644
--- a/llvm/docs/Contributing.rst
+++ b/llvm/docs/Contributing.rst
@@ -89,10 +89,9 @@ in order to update the last commit with all pending changes.
   ``clang/tools/clang-format/git-clang-format``.
 
 The LLVM project has migrated to GitHub Pull Requests as its review process.
-We still have an active :ref:`Phabricator <phabricator-reviews>`
-instance for the duration of the migration. If you want to contribute to LLVM
-now, please use GitHub. For more information about the workflow of using GitHub
-Pull Requests see our :ref:`GitHub <github-reviews>` documentation.
+For more information about the workflow of using GitHub Pull Requests see our
+:ref:`GitHub <github-reviews>` documentation. We still have an read-only
+`LLVM's Phabricator <https://reviews.llvm.org>`_ instance.
 
 To make sure the right people see your patch, please select suitable reviewers
 and add them to your patch when requesting a review. Suitable reviewers are the
@@ -185,5 +184,5 @@ of LLVM's high-level design, as well as its internals:
 .. _clang-format-
diff .py: https://reviews.llvm.org/source/llvm-github/browse/main/clang/tools/clang-format/clang-format-
diff .py
 .. _git-clang-format: https://reviews.llvm.org/source/llvm-github/browse/main/clang/tools/clang-format/git-clang-format
 .. _LLVM's GitHub: https://github.com/llvm/llvm-project
-.. _LLVM's Phabricator (deprecated): https://reviews.llvm.org/
+.. _LLVM's Phabricator (read-only): https://reviews.llvm.org/
 .. _LLVM's Open Projects page: https://llvm.org/OpenProjects.html#what

diff  --git a/llvm/docs/DeveloperPolicy.rst b/llvm/docs/DeveloperPolicy.rst
index 19b8ddb5245fc3..5d3731d761a3d6 100644
--- a/llvm/docs/DeveloperPolicy.rst
+++ b/llvm/docs/DeveloperPolicy.rst
@@ -129,8 +129,8 @@ awareness of. For such changes, the following should be done:
 
 .. warning::
 
-  Phabricator is deprecated and will be switched to read-only mode in October
-  2023, for new code contributions use :ref:`GitHub Pull Requests <github-reviews>`.
+  Phabricator is deprecated is available in read-only mode,
+  for new code contributions use :ref:`GitHub Pull Requests <github-reviews>`.
   This section contains old information that needs to be updated.
 
 * When performing the code review for the change, please add any applicable

diff  --git a/llvm/docs/Phabricator.rst b/llvm/docs/Phabricator.rst
deleted file mode 100644
index 057e5e0a140709..00000000000000
--- a/llvm/docs/Phabricator.rst
+++ /dev/null
@@ -1,441 +0,0 @@
-.. _phabricator-reviews:
-
-=============================
-Code Reviews with Phabricator
-=============================
-
-.. warning::
-
-  Phabricator is deprecated and will be switched to read-only mode in October
-  2023, for new code contributions use :ref:`GitHub Pull Requests <github-reviews>`.
-
-
-.. contents::
-  :local:
-
-
-If you prefer to use a web user interface for code reviews, you can now submit
-your patches for Clang and LLVM at `LLVM's Phabricator`_ instance.
-
-While Phabricator is a useful tool for some, the relevant -commits mailing list
-is the system of record for all LLVM code review. The mailing list should be
-added as a subscriber on all reviews, and Phabricator users should be prepared
-to respond to free-form comments in mail sent to the commits list.
-
-Sign up
--------
-
-To get started with Phabricator, navigate to `https://reviews.llvm.org`_ and
-click the power icon in the top right. You can register with a GitHub account,
-a Google account, or you can create your own profile.
-
-Make *sure* that the email address registered with Phabricator is subscribed
-to the relevant -commits mailing list. If you are not subscribed to the commit
-list, all mail sent by Phabricator on your behalf will be held for moderation.
-
-Note that if you use your git user name as Phabricator user name,
-Phabricator will automatically connect your submits to your Phabricator user in
-the `Code Repository Browser`_.
-
-Requesting a review via the command line
-----------------------------------------
-
-Phabricator has a tool called *Arcanist* to upload patches from
-the command line. To get you set up, follow the
-`Arcanist Quick Start`_ instructions.
-
-You can learn more about how to use arc to interact with
-Phabricator in the `Arcanist User Guide`_.
-The basic way of creating a revision for the current commit in your local
-repository is to run:
-
-::
-
-  arc 
diff  HEAD~
-
-
-Sometime you may want to create a draft revision to show the proof of concept
-or for experimental purposes, In that case you can use the `--draft` option. It
-will create a new draft revision. The good part is: it will not send mail to
-llvm-commit mailing list, patch reviewers, and all other subscribers, buildbot
-will also run on every patch update:
-
-::
-
-  arc 
diff  --draft HEAD~
-
-
-If you later update your commit message, you need to add the `--verbatim`
-option to have `arc` update the description on Phabricator:
-
-::
-
-  arc 
diff  --edit --verbatim
-
-
-.. _phabricator-request-review-web:
-
-Requesting a review via the web interface
------------------------------------------
-
-The tool to create and review patches in Phabricator is called
-*Differential*.
-
-Note that you can upload patches created through git, but using `arc` on the
-command line (see previous section) is preferred: it adds more metadata to
-Phabricator which are useful for the pre-merge testing system and for
-propagating attribution on commits when someone else has to push it for you.
-
-To make reviews easier, please always include **as much context as
-possible** with your 
diff ! Don't worry, Phabricator
-will automatically send a 
diff  with a smaller context in the review
-email, but having the full file in the web interface will help the
-reviewer understand your code.
-
-To get a full 
diff , use one of the following commands (or just use Arcanist
-to upload your patch):
-
-* ``git show HEAD -U999999 > mypatch.patch``
-* ``git 
diff  -U999999 @{u} > mypatch.patch``
-* ``git 
diff  HEAD~1 -U999999 > mypatch.patch``
-
-Before uploading your patch, please make sure it is formatted properly, as
-described in :ref:`How to Submit a Patch <format patches>`.
-
-To upload a new patch:
-
-* Click *Differential*.
-* Click *+ Create Diff*.
-* Paste the text 
diff  or browse to the patch file. Leave this first Repository
-  field blank. (We'll fill in the Repository later, when sending the review.)
-  Click *Create Diff*.
-* Leave the drop down on *Create a new Revision...* and click *Continue*.
-* Enter a descriptive title and summary.  The title and summary are usually
-  in the form of a :ref:`commit message <commit messages>`.
-* Add reviewers (see below for advice). (If you set the Repository field
-  correctly, llvm-commits or cfe-commits will be subscribed automatically;
-  otherwise, you will have to manually subscribe them.)
-* In the Repository field, enter "rG LLVM Github Monorepo".
-* Click *Save*.
-
-To submit an updated patch:
-
-* Click *Differential*.
-* Click *+ Create Diff*.
-* Paste the updated 
diff  or browse to the updated patch file. Click *Create Diff*.
-* Select the review you want to from the *Attach To* dropdown and click
-  *Continue*.
-* Leave the Repository field blank. (We previously filled out the Repository
-  for the review request.)
-* Add comments about the changes in the new 
diff . Click *Save*.
-
-Choosing reviewers: You typically pick one or two people as initial reviewers.
-This choice is not crucial, because you are merely suggesting and not requiring
-them to participate. Many people will see the email notification on cfe-commits
-or llvm-commits, and if the subject line suggests the patch is something they
-should look at, they will.
-
-.. _creating-a-patch-series:
-
-Creating a patch series
------------------------
-
-Chaining reviews together requires some manual work. There are two ways to do it
-(these are also described `here <https://moz-conduit.readthedocs.io/en/latest/arcanist-user.html#series-of-commits>`_
-along with some screenshots of what to expect).
-
-.. _using-the-web-interface:
-
-Using the web interface
-^^^^^^^^^^^^^^^^^^^^^^^
-
-This assumes that you've already created a Phabricator review for each commit,
-using `arc` or the web interface.
-
-* Go to what will be the last review in the series (the most recent).
-* Click "Edit Related Revisions" then "Edit Parent Revisions".
-* This will open a dialog where you will enter the patch number of the parent patch
-  (or patches). The patch number is of the form D<number> and you can find it by
-  looking at the URL for the review e.g. reviews.llvm/org/D12345.
-* Click "Save Parent Revisions" after entering them.
-* You should now see a "Stack" tab in the "Revision Contents" section of the web
-  interface, showing the parent patch that you added.
-
-Repeat this with each previous review until you reach the first in the series. This
-one won't have a parent since it's the start of the series.
-
-If you prefer to start with the first in the series and go forward, you can use the
-"Edit Child Revisions" option instead.
-
-.. _using-patch-summaries:
-
-Using patch summaries
-^^^^^^^^^^^^^^^^^^^^^
-
-This applies to new and existing reviews, uploaded with `arc` or the web interface.
-
-* Upload the first review and note its patch number, either with the web interface
-  or `arc`.
-* For each commit after that, add the following line to the commit message or patch
-  summary: "Depends on D<num>", where "<num>" is the patch number of the previous review.
-  This must be entirely on its own line, with a blank line before it.
-  For example::
-
-    [llvm] Example commit
-
-    Depends on D12345
-
-* If you want a single review to have multiple parent reviews then
-  add more with "and", for example: "Depends on D12344 and D12345".
-* Upload the commit with the web interface or `arc`
-  (``arc 
diff  --verbatim`` to update an existing review).
-* You will see a "Stack" tab in the "Revision Contents" section of the review
-  in the web interface, showing the parent review.
-* Repeat these steps until you've uploaded or updated all the patches in
-  your series.
-
-When you push the patches, please remove the "Depends on" lines from the
-commit messages, since they add noise and duplicate git's implicit ordering.
-
-One frequently used workflow for creating a series of patches using patch summaries
-is based on git's rebasing. These steps assume that you have a series of commits that
-you have not posted for review, but can be adapted to update existing reviews.
-
-* git interactive rebase back to the first commit you want to upload for review::
-
-    git rebase -i HEAD~<number of commits you have written>
-
-* Mark all commits for editing by changing "pick" to "edit" in the instructions
-  git shows.
-* Start the rebase (usually by writing and closing the instructions).
-* For the first commit:
-
-  - Upload the current commit for a review (with ``arc 
diff `` or the web
-    interface).
-
-  - Continue to the next commit with ``git rebase --continue``
-
-* For the rest:
-
-  - Add the "Depends on..." line using ``git commit --amend``
-
-  - Upload for review.
-
-  - Continue the rebase.
-
-* Once the rebase is complete, you've created your patch series.
-
-.. _finding-potential-reviewers:
-
-Finding potential reviewers
----------------------------
-
-Here are a couple of ways to pick the initial reviewer(s):
-
-* Use ``git blame`` and the commit log to find names of people who have
-  recently modified the same area of code that you are modifying.
-* Look in CODE_OWNERS.TXT to see who might be responsible for that area.
-* If you've discussed the change on a dev list, the people who participated
-  might be appropriate reviewers.
-
-Even if you think the code owner is the busiest person in the world, it's still
-okay to put them as a reviewer. Being the code owner means they have accepted
-responsibility for making sure the review happens.
-
-Reviewing code with Phabricator
--------------------------------
-
-Phabricator allows you to add inline comments as well as overall comments
-to a revision. To add an inline comment, select the lines of code you want
-to comment on by clicking and dragging the line numbers in the 
diff  pane.
-When you have added all your comments, scroll to the bottom of the page and
-click the Submit button.
-
-You can add overall comments in the text box at the bottom of the page.
-When you're done, click the Submit button.
-
-Phabricator has many useful features, for example allowing you to select
-
diff s between 
diff erent versions of the patch as it was reviewed in the
-*Revision Update History*. Most features are self descriptive - explore, and
-if you have a question, drop by on #llvm in IRC to get help.
-
-Note that as e-mail is the system of reference for code reviews, and some
-people prefer it over a web interface, we do not generate automated mail
-when a review changes state, for example by clicking "Accept Revision" in
-the web interface. Thus, please type LGTM into the comment box to accept
-a change from Phabricator.
-
-.. _pre-merge-testing:
-
-Pre-merge testing
------------------
-
-The pre-merge tests are a continuous integration (CI) workflow. The workflow
-checks the patches uploaded to Phabricator before a user merges them to the main
-branch - thus the term *pre-merge testing*.
-
-When a user uploads a patch to Phabricator, Phabricator triggers the checks and
-then displays the results. This way bugs in a patch are contained during the
-code review stage and do not pollute the main branch.
-
-Our goal with pre-merge testing is to report most true problems while strongly
-minimizing the number of false positive reports.  Our goal is that problems
-reported are always actionable.  If you notice a false positive, please report
-it so that we can identify the cause.
-
-If you notice issues or have an idea on how to improve pre-merge checks, please
-`create a new issue <https://github.com/google/llvm-premerge-checks/issues/new>`_
-or give a ❤️ to an existing one.
-
-Requirements
-^^^^^^^^^^^^
-
-To get a patch on Phabricator tested, the build server must be able to apply the
-patch to the checked out git repository. Please make sure that either:
-
-* You set a git hash as ``sourceControlBaseRevision`` in Phabricator which is
-  available on the GitHub repository,
-* **or** you define the dependencies of your patch in Phabricator,
-* **or** your patch can be applied to the main branch.
-
-Only then can the build server apply the patch locally and run the builds and
-tests.
-
-Accessing build results
-^^^^^^^^^^^^^^^^^^^^^^^
-Phabricator will automatically trigger a build for every new patch you upload or
-modify. Phabricator shows the build results at the top of the entry. Clicking on
-the links (in the red box) will show more details:
-
-  .. image:: Phabricator_premerge_results.png
-
-The CI will compile and run tests, run clang-format and clang-tidy on lines
-changed.
-
-If a unit test failed, this is shown below the build status. You can also expand
-the unit test to see the details:
-
-  .. image:: Phabricator_premerge_unit_tests.png
-
-Opting Out
-^^^^^^^^^^
-
-In case you want to opt-out entirely of pre-merge testing, add yourself to the
-`OPT OUT project <https://reviews.llvm.org/project/view/83/>`_.  If you decide
-to opt-out, please let us know why, so we might be able to improve in the future.
-
-Operational Details
-^^^^^^^^^^^^^^^^^^^
-
-The code responsible for running the pre-merge flow can be found in the `external
-repository <https://github.com/google/llvm-premerge-checks>`_.  For enhancement
-ideas and most bugs, please file an issue on said repository.  For immediate
-operational problems, the point of contact is
-`Mikhail Goncharov <mailto:goncharo at google.com>`_.
-
-Background on the pre-merge infrastructure can be found in `this 2020 DevMeeting
-talk <https://llvm.org/devmtg/2020-09/slides/Goncharov-Pre-merge_checks.pdf>`_
-
-Committing a change
--------------------
-
-Once a patch has been reviewed and approved on Phabricator it can then be
-committed to trunk. If you do not have commit access, someone has to
-commit the change for you (with attribution). It is sufficient to add
-a comment to the approved review indicating you cannot commit the patch
-yourself. If you have commit access, there are multiple workflows to commit the
-change. Whichever method you follow it is recommended that your commit message
-ends with the line:
-
-::
-
-  Differential Revision: <URL>
-
-where ``<URL>`` is the URL for the code review, starting with
-``https://reviews.llvm.org/``.
-
-This allows people reading the version history to see the review for
-context. This also allows Phabricator to detect the commit, close the
-review, and add a link from the review to the commit.
-
-Note that if you use the Arcanist tool the ``Differential Revision`` line will
-be added automatically. If you don't want to use Arcanist, you can add the
-``Differential Revision`` line (as the last line) to the commit message
-yourself.
-
-Using the Arcanist tool can simplify the process of committing reviewed code as
-it will retrieve reviewers, the ``Differential Revision``, etc from the review
-and place it in the commit message. You may also commit an accepted change
-directly using ``git push``, per the section in the :ref:`getting started
-guide <commit_from_git>`.
-
-Note that if you commit the change without using Arcanist and forget to add the
-``Differential Revision`` line to your commit message then it is recommended
-that you close the review manually. In the web UI, under "Leap Into Action" put
-the git revision number in the Comment, set the Action to "Close Revision" and
-click Submit.  Note the review must have been Accepted first.
-
-Committing someone's change from Phabricator
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-On a clean Git repository on an up to date ``main`` branch run the
-following (where ``<Revision>`` is the Phabricator review number):
-
-::
-
-  arc patch D<Revision>
-
-
-This will create a new branch called ``arcpatch-D<Revision>`` based on the
-current ``main`` and will create a commit corresponding to ``D<Revision>`` with a
-commit message derived from information in the Phabricator review.
-
-Check you are happy with the commit message and amend it if necessary.
-For example, ensure the 'Author' property of the commit is set to the original author.
-You can use a command to correct the author property if it is incorrect:
-
-::
-
-  git commit --amend --author="John Doe <jdoe at llvm.org>"
-
-Then, make sure the commit is up-to-date, and commit it. This can be done by running
-the following:
-
-::
-
-  git pull --rebase https://github.com/llvm/llvm-project.git main
-  git show # Ensure the patch looks correct.
-  ninja check-$whatever # Rerun the appropriate tests if needed.
-  git push https://github.com/llvm/llvm-project.git HEAD:main
-
-
-Abandoning a change
--------------------
-
-If you decide you should not commit the patch, you should explicitly abandon
-the review so that reviewers don't think it is still open. In the web UI,
-scroll to the bottom of the page where normally you would enter an overall
-comment. In the drop-down Action list, which defaults to "Comment," you should
-select "Abandon Revision" and then enter a comment explaining why. Click the
-Submit button to finish closing the review.
-
-Status
-------
-
-Please let us know whether you like it and what could be improved! We're still
-working on setting up a bug tracker, but you can email klimek-at-google-dot-com
-and chandlerc-at-gmail-dot-com and CC the llvm-dev mailing list with questions
-until then. We also could use help implementing improvements. This sadly is
-really painful and hard because the Phabricator codebase is in PHP and not as
-testable as you might like. However, we've put exactly what we're deploying up
-on an `llvm-reviews GitHub project`_ where folks can hack on it and post pull
-requests. We're looking into what the right long-term hosting for this is, but
-note that it is a derivative of an existing open source project, and so not
-trivially a good fit for an official LLVM project.
-
-.. _LLVM's Phabricator: https://reviews.llvm.org
-.. _`https://reviews.llvm.org`: https://reviews.llvm.org
-.. _Code Repository Browser: https://reviews.llvm.org/
diff usion/
-.. _Arcanist Quick Start: https://secure.phabricator.com/book/phabricator/article/arcanist_quick_start/
-.. _Arcanist User Guide: https://secure.phabricator.com/book/phabricator/article/arcanist/
-.. _llvm-reviews GitHub project: https://github.com/r4nt/llvm-reviews/

diff  --git a/llvm/docs/Phabricator_premerge_results.png b/llvm/docs/Phabricator_premerge_results.png
deleted file mode 100644
index ce55f231148b5f..00000000000000
Binary files a/llvm/docs/Phabricator_premerge_results.png and /dev/null 
diff er

diff  --git a/llvm/docs/Phabricator_premerge_unit_tests.png b/llvm/docs/Phabricator_premerge_unit_tests.png
deleted file mode 100644
index fc2088550227d3..00000000000000
Binary files a/llvm/docs/Phabricator_premerge_unit_tests.png and /dev/null 
diff er

diff  --git a/llvm/docs/UserGuides.rst b/llvm/docs/UserGuides.rst
index 6fb61f2d3a2526..2eeb076192033b 100644
--- a/llvm/docs/UserGuides.rst
+++ b/llvm/docs/UserGuides.rst
@@ -57,7 +57,6 @@ intermediate LLVM representation.
    JITLink
    NewPassManager
    NVPTXUsage
-   Phabricator
    Passes
    ReportingGuide
    ResponseGuide

diff  --git a/utils/arcanist/clang-format.sh b/utils/arcanist/clang-format.sh
deleted file mode 100755
index c8ae017fe751a4..00000000000000
--- a/utils/arcanist/clang-format.sh
+++ /dev/null
@@ -1,68 +0,0 @@
-#!/bin/bash
-
-set -euo pipefail
-
-# "script-and-regex.regex": "/^(?P<severity>.*?)\n(?P<message>.*?)\n(?P<line>\\d),(?P<char>\\d)(\n(?P<original>.*?)>>>>\n(?P<replacement>.*?)<<<<?)$/s",
-
-# Arcanist linter that invokes clang-format via clang/tools/clang-format/clang-format-
diff .py
-# stdout from this script is parsed into a regex and used by Arcanist.
-# https://secure.phabricator.com/book/phabricator/article/arcanist_lint_script_and_regex/
-
-# To skip running all linters when creating/updating a 
diff , use `arc 
diff  --nolint`.
-
-# advice severity level is completely non-disruptive.
-# switch to warning or error if you want to prompt the user.
-if ! hash clang-format >/dev/null; then
-  echo "advice"
-  echo "clang-format not found in user’s local PATH; not linting file."
-  echo "===="
-  exit 0
-fi
-if ! git rev-parse --git-dir >/dev/null; then
-  echo "advice"
-  echo "not in git repostitory; not linting file."
-  echo "===="
-  exit 0
-fi
-
-src_file="${1}"
-original_file="$(mktemp)"
-formatted_file="$(mktemp)"
-readonly src_file
-readonly original_file
-readonly formatted_file
-cp -p "${src_file}" "${original_file}"
-cp -p "${src_file}" "${formatted_file}"
-
-cleanup() {
-  rc=$?
-  rm -f "${formatted_file}" "${original_file}"
-  exit ${rc}
-}
-trap 'cleanup' INT HUP QUIT TERM EXIT
-
-# Arcanist can filter out lint messages for unchanged lines, but for that, we
-# need to generate line by line lint messages. Instead, we generate one lint
-# message on line 1, char 1 with file content edited using clang-format-
diff .py
-#
-# We do not use git-clang-format because it wants to modify the index,
-# and arc is already holding the lock.
-#
-# We do not look for clang-format-
diff  or clang-format-
diff .py in the PATH
-# because whether/how these are installed 
diff ers between distributions,
-# and we have an executable copy in the tree anyway.
-arc_base_commit=$(arc which --show-base)
-git 
diff -index -U0 "${arc_base_commit}" "${src_file}" \
-  | clang/tools/clang-format/clang-format-
diff .py -style file -i -p1
-
-cp -p "${src_file}" "${formatted_file}"
-cp -p "${original_file}" "${src_file}"
-if ! 
diff  -q "${src_file}" "${formatted_file}" > /dev/null ; then
-  echo "autofix"
-  echo "clang-format suggested style edits found:"
-  echo "1,1"  # line,char of start of replacement.
-  cat "${src_file}"
-  echo ">>>>"
-  cat "${formatted_file}"
-  echo "<<<<"
-fi


        


More information about the llvm-commits mailing list