##// END OF EJS Templates
rust-pyo3: implementation of LazyAncestors...
rust-pyo3: implementation of LazyAncestors There is a difference in the implementaion of `__contains__` between PyO3 and rust-cpython: if the specified signature in Rust code is for a precise type (e.g., `PyRevision`) rust-cpython would automatically convert the potential resulting `TypeError` into `Ok(false)`, whereas PyO3 let it bubble up. Hence we treat the case manually and add it to the common test. In Mercurial Python code, `None in` for a `LazyAncestors` object can really happens, namely in this lambda from `discover._postprocessobsolete`: ``` ispushed = lambda n: torev(n) in futurecommon ``` This lambda can get called with `n` such that `torev(n)` is `False` (seen in `test-bookmarks-push-pull.t`).

File last commit:

r50314:2edb41ed default
r53430:6b694bdf default
Show More
rhel9
25 lines | 572 B | text/plain | TextLexer
FROM rockylinux/rockylinux:9
RUN groupadd -g %GID% build && \
useradd -u %UID% -g %GID% -s /bin/bash -d /build -m build
RUN dnf install 'dnf-command(config-manager)' -y
# crb repository is necessary for docutils
RUN dnf config-manager --set-enabled crb
RUN yum install -y \
gcc \
gettext \
make \
python3-devel \
python3-docutils \
rpm-build
# For creating repo meta data
RUN yum install -y createrepo
# For rust extensions
RUN yum install -y cargo
# avoid incorrect docker image permissions on /tmp preventing writes by non-root users
RUN chmod 1777 /tmp