Page MenuHomePhabricator

Arcanist Experimental Branch
Closed, InvalidPublic


  • Certificates (an old credential mechanism) are no longer supported. If you have a certificate, arc will behave like you do not have any credentials. Follow the login prompts to convert your certificate into a token and things will work correctly again.

  • arc browse tries to make anonymous calls to phid.lookup, diffusion.querycommits, and other stuff indirectly via loadRepository... which aren't public and will never work. It recovers cleanly but these should be public on public installs (and, ideally, modern).
  • arc browse should display a proper warning if it is running anonymously; currently it can spew unrelated warnings and then choke. Needs engine-has-token tests, and all this messaging should get cleaned up.

Event Timeline

eadler added a project: Restricted Project.Nov 24 2016, 7:10 AM
  • arc diff --no-diff (an internal workflow) has been removed.
  • The internal "async lint" flag has been removed. This was an ancient, Facebook-specific flag for extensions which is obsoleted by Harbormaster.
  • arc lint --only-new has been removed. This relied on upstream lint support which was never fully developed.
  • arc lint --cache has been removed.
  • The arc.lint.cache config option has been removed.
  • arc lint --only-changed has been removed. arc now detects whether you want warnings on all lines or only changed lines by examining the other arguments (paths, --everything, --lintall, and --rev).
  • arc diff --cache (which was a passthrough for arc lint --cache) has been removed.

See T2543. The flags related to previewing a diff have changed:

Old CommandNew Command
arc diff --onlyarc diff --only --nolint --nounit
arc diff --previewarc diff --only
arc diff --plan-changesNone
Nonearc diff --draft

Previously, arc diff --preview and arc diff --only had similar behavior: they only created a diff (not a revision). --preview ran lint and unit tests, while --only did not. The new behavior is that --preview has been removed, and --only now runs lint and unit tests. You can recreate the old --only with arc alias, as --only --nounit --nolint or perhaps --only --nounit --nolint --browse. The old --preview is now --only. This rename is because the distinction between "draft" and "only" seems more clear than the distinction between "draft" and "preview".

The --plan-changes flag has been removed. This is obsolete with drafts.

The --draft flag has been added. This holds a revision in the new "Draft" state indefinitely, even after builds finish. Drafts are not automatically submitted to reviewers for review. The --draft flag serves as a sort of more powerful version of the --preview and --plan-changes flags.

Additionally, arc diff no longer dispatches ArcanistEventType::TYPE_REVISION_WILLCREATEREVISION if the server is sufficiently modern. (It no longer uses the datastructure this event received.)