sapling/eden/scm/edenscm/mercurial/cext
Viet Hung Nguyen b7817ffbd8 xdiff: renamed third-party xdiff functions
Summary:
Renamed xdiff functions to avoid linking issues when using both libgit2-sys and xdiff.

When using repo_import tool (https://fburl.com/diffusion/8p6fhjt2) we have libgit2-sys dependency for importing git repos. However, when we derive blame data types, we need to use xdiff functionalities (from_no_parents: https://fburl.com/diffusion/pitukmyo -> diff_hunks: https://fburl.com/diffusion/9f8caan9 -> xdl_diff: https://fburl.com/diffusion/260x66hf). Both libgit2 and eden/scm have vendored versions of xdiff library. Therefore, libgit2-sys and eden/scm share functions with the same signatures, but have different behaviours and when we tried to derive blame, it used libgit2-sys's xdl_diff instead of eden's. This resulted in getting segfaults (https://fburl.com/paste/04gwalpo).
Note: repo_import is the first tool that has tried to import both and the first to run into this issue.

Reviewed By: StanislavGlebik

Differential Revision: D22432330

fbshipit-source-id: f2b965f3926a2dc45de1bf20e41dad70ca09cdfd
2020-07-09 01:20:32 -07:00
..
__init__.py Move fb-mercurial sources into an eden/scm subdirectory. 2019-11-13 16:04:48 -08:00
base85.c use absolute includes for the native cext modules 2020-02-19 13:05:06 -08:00
base85.pyi start adding type annotations for the cext code 2020-02-21 13:54:19 -08:00
bdiff.c py3: fix various wireprotocol related tests 2020-04-13 15:28:24 -07:00
bdiff.pyi start adding type annotations for the cext code 2020-02-21 13:54:19 -08:00
charencode.c use absolute includes for the native cext modules 2020-02-19 13:05:06 -08:00
charencode.h use absolute includes for the native cext modules 2020-02-19 13:05:06 -08:00
dirs.c use absolute includes for the native cext modules 2020-02-19 13:05:06 -08:00
manifest.c use absolute includes for the native cext modules 2020-02-19 13:05:06 -08:00
mpatch.c use absolute includes for the native cext modules 2020-02-19 13:05:06 -08:00
mpatch.pyi start adding type annotations for the cext code 2020-02-21 13:54:19 -08:00
osutil.c fsinfo: remove old getfstype implementation 2020-03-11 17:35:41 -07:00
osutil.pyi start adding type annotations for the cext code 2020-02-21 13:54:19 -08:00
parsers.c py3: use 's' instead of 'C' for dirstatetuple parsing 2020-02-27 13:07:13 -08:00
parsers.pyi add more annotations for edenscmnative.parsers 2020-03-11 16:21:30 -07:00
pathencode.c use absolute includes for the native cext modules 2020-02-19 13:05:06 -08:00
README.md Move fb-mercurial sources into an eden/scm subdirectory. 2019-11-13 16:04:48 -08:00
revlog.c repoview: further remove repoview references 2020-07-06 14:04:27 -07:00
util.h use absolute includes for the native cext modules 2020-02-19 13:05:06 -08:00
xdiff.c xdiff: renamed third-party xdiff functions 2020-07-09 01:20:32 -07:00
xdiff.pyi start adding type annotations for the cext code 2020-02-21 13:54:19 -08:00

cext

Native code used by core Mercurial (not extensions), that depends on Python, lives here.

See also hgext/extlib/README.md, lib/README.md.