sapling/eden/scm/edenscmnative/bindings/modules
Meyer Jacobs b9f3c9c692 taggederror: Introduce taggederror-util for more ergonomic error tagging for eden error types.
Summary:
Introduce taggederror-util, which provides a new trait `AnyhowEdenExt`, which provides a method `eden_metadata` for anyhow errors and results. This method works much like `AnyhowExt::common_metadata`, but additionally supports extracting default error metadata from known `Tagged` types which are listed explicitly in the method implementation.

Extend `FilteredAnyhow` to support a configuration "metadata function", which allows swapping out `eden_metadata` for the standard `common_metadata`.

Modify Rust dispatch and Python bindings to use `AnyhowEdenExt` for metadata extraction and printing.

Modify `intentional_error` to rely on `AnyhowEdenExt` for tagging (removes `.tagged` call, no tags will be visible if `AnyhowEdenExt` is not used).

Reviewed By: DurhamG

Differential Revision: D22927203

fbshipit-source-id: 04b36fdfaa24af591118acb9e418d1ed7ae33f91
2020-08-06 19:37:25 -07:00
..
pyblackbox Update cpython to 0.5 2020-04-28 11:47:41 -07:00
pybookmarkstore Update cpython to 0.5 2020-04-28 11:47:41 -07:00
pybytes pybytes: convert Rust Bytes to Python buffer or memoryview 2020-06-30 10:19:03 -07:00
pycliparser Update cpython to 0.5 2020-04-28 11:47:41 -07:00
pycommands Update cpython to 0.5 2020-04-28 11:47:41 -07:00
pyconfigparser configs: switch to auditing the specific list of known problematic configs 2020-07-13 08:53:18 -07:00
pydag dag: use concrete error types 2020-08-06 12:31:57 -07:00
pydiffhelpers Update cpython to 0.5 2020-04-28 11:47:41 -07:00
pydirs Update cpython to 0.5 2020-04-28 11:47:41 -07:00
pydynamicconfig configs: implement user sharding 2020-07-16 09:07:53 -07:00
pyedenapi pyedenapi: rearrange parameters 2020-07-27 14:54:57 -07:00
pyerror taggederror: Introduce taggederror-util for more ergonomic error tagging for eden error types. 2020-08-06 19:37:25 -07:00
pyfs Update cpython to 0.5 2020-04-28 11:47:41 -07:00
pyhgtime Update cpython to 0.5 2020-04-28 11:47:41 -07:00
pyindexes revlogindex: include NodeRevMap in RevlogIndex 2020-06-02 14:00:34 -07:00
pylz4 Update cpython to 0.5 2020-04-28 11:47:41 -07:00
pymanifest revisionstore: return missing keys from prefetch 2020-07-28 10:51:38 -07:00
pymetalog pyzstore: further reduce cpython_ext::Bytes usage 2020-05-01 14:24:52 -07:00
pymutationstore pydag: use trait object abstractions 2020-07-06 15:51:00 -07:00
pynodemap Update cpython to 0.5 2020-04-28 11:47:41 -07:00
pypager streampager: fix progress rendering 2020-06-10 19:29:28 -07:00
pypathmatcher Update cpython to 0.5 2020-04-28 11:47:41 -07:00
pyregex bindings: add bindings to regex 2020-05-12 16:32:50 -07:00
pyrenderdag pyrenderdag: support non-revision-numbers graph vertexes 2020-05-14 12:03:44 -07:00
pyrevisionstore revisionstore: return missing keys from prefetch 2020-07-28 10:51:38 -07:00
pyrevlogindex revlogindex: implement writing to revlog data 2020-07-06 15:50:58 -07:00
pythreading Update cpython to 0.5 2020-04-28 11:47:41 -07:00
pytracing Update cpython to 0.5 2020-04-28 11:47:41 -07:00
pytreestate Update cpython to 0.5 2020-04-28 11:47:41 -07:00
pyvlq Update cpython to 0.5 2020-04-28 11:47:41 -07:00
pyworker revisionstore: add a new StoreResult type 2020-07-24 10:45:40 -07:00
pyworkingcopy Update cpython to 0.5 2020-04-28 11:47:41 -07:00
pyzstd Update cpython to 0.5 2020-04-28 11:47:41 -07:00
pyzstore pyzstore: further reduce cpython_ext::Bytes usage 2020-05-01 14:24:52 -07:00