##// END OF EJS Templates
rust: module policy with importrust...
rust: module policy with importrust We introduce two rust+c module policies and a new `policy.importrust()` that makes use of them. This simple approach provides runtime switching of implementations, which is crucial for the performance measurements such as those Octobus does with ASV. It can also be useful for bug analysis. It also has the advantage of making conditionals in Rust callers more uniform, in particular abstracting over specifics like `demandimport` At this point, the build stays unchanged, with the rust-cpython based `rustext` module being built if HGWITHRUSTEXT=cpython. More transparency for the callers, i.e., just using `policy.importmod` would be a much longer term and riskier effort for the following reasons: 1. It would require to define common module boundaries for the three or four cases (pure, c, rust+ext, cffi) and that is premature with the Rust extension currently under heavy development in areas that are outside the scope of the C extensions. 2. It would imply internal API changes that are not currently wished, as the case of ancestors demonstrates. 3. The lack of data or property-like attributes (tp_member and tp_getset) in current `rust-cpython` makes it impossible to achieve direct transparent replacement of pure Python classes by Rust extension code, meaning that the caller sometimes has to be able to make adjustments or provide additional wrapping.

File last commit:

r40003:aab43d58 default
r42651:810f66b4 default
Show More
.hgignore
70 lines | 870 B | text/plain | TextLexer
Bryan O'Sullivan
Switch to new syntax for .hgignore files....
r1270 syntax: glob
*.elc
Simon Heimberg
Makefile: do update on a temporary copy of a po file...
r19991 *.tmp
Bryan O'Sullivan
Switch to new syntax for .hgignore files....
r1270 *.orig
*.rej
*~
Bryan O'Sullivan
Ignore mergebackup files generated by mpatch
r5019 *.mergebackup
Vadim Gelfer
contrib: add restricted shell.
r2341 *.o
Bryan O'Sullivan
Switch to new syntax for .hgignore files....
r1270 *.so
Craig Leres
hgignore: ignore dll files generated under cygwin
r13643 *.dll
Adrian Buehlmann
hgignore: simply ignore all *.exe's everywhere...
r17115 *.exe
Adrian Buehlmann
ignore *.pyd files...
r6551 *.pyd
Bryan O'Sullivan
Switch to new syntax for .hgignore files....
r1270 *.pyc
Simon Heimberg
hgignore: ignore more bytecode...
r13346 *.pyo
*$py.class
Bryan O'Sullivan
Switch to new syntax for .hgignore files....
r1270 *.swp
*.prof
Adrian Buehlmann
hgignore: ignore zip files
r17274 *.zip
Bryan O'Sullivan
win32text: be more careful about rejecting violating changesets...
r8147 \#*\#
.\#*
Boris Feld
sparse-revlog: add a test checking revlog deltas for a churning file...
r39527 tests/artifacts/cache/big-file-churn.hg
Vadim Gelfer
let run-tests run optional code coverage tests....
r2068 tests/.coverage*
Bryan O'Sullivan
tests: write recent run times to a file named tests/.testtimes...
r27634 tests/.testtimes*
David R. MacIver
testing: generate tests operations using Hypothesis...
r28255 tests/.hypothesis
tests/hypothesis-generated
Thomas Arendsen Hein
Ignore annotated coverage output of run-tests.py -C
r2151 tests/annotated
Gregory Szorc
run-tests: mechanism to report exceptions during test execution...
r35191 tests/exceptions
Bryan O'Sullivan
Switch to new syntax for .hgignore files....
r1270 tests/*.err
Markus Zapke-Gründemann
tests: add htmlcov option
r15859 tests/htmlcov
Bryan O'Sullivan
Switch to new syntax for .hgignore files....
r1270 build
Yuya Nishihara
hgignore: ignore chg binary
r28061 contrib/chg/chg
Vadim Gelfer
contrib: add restricted shell.
r2341 contrib/hgsh/hgsh
anatoly techtonik
contrib/vagrant: use Vagrant for running tests on virtual machine...
r21874 contrib/vagrant/.vagrant
Bryan O'Sullivan
Switch to new syntax for .hgignore files....
r1270 dist
Matt Mackall
packaging: move output directory from build/ to packages/...
r21560 packages
Takumi IINO
doc: make man and html from translated documents...
r19426 doc/common.txt
Bryan O'Sullivan
Switch to new syntax for .hgignore files....
r1270 doc/*.[0-9]
Takumi IINO
doc: make man and html from translated documents...
r19426 doc/*.[0-9].txt
Thomas Arendsen Hein
Ignore generated documentation
r1817 doc/*.[0-9].gendoc.txt
Bryan O'Sullivan
Switch to new syntax for .hgignore files....
r1270 doc/*.[0-9].{x,ht}ml
MANIFEST
Thomas Arendsen Hein
hgignore: ignore MANIFEST.in (generated since 2ce7dfe17bc5)
r14560 MANIFEST.in
Bryan O'Sullivan
Switch to new syntax for .hgignore files....
r1270 patches
timeless
setup: create a module for the modulepolicy...
r28430 mercurial/__modulepolicy__.py
Bryan O'Sullivan
Switch to new syntax for .hgignore files....
r1270 mercurial/__version__.py
Adrian Buehlmann
exewrapper: adapt for legacy HackableMercurial...
r17732 mercurial/hgpythonlib.h
Lee Cantey
Ignore mercurial.egg-info build output
r11380 mercurial.egg-info
Lee Cantey
Ignore .DS_Store directories...
r2987 .DS_Store
Kirill Smelkov
.hgignore += tags & cscope files
r5693 tags
cscope.*
Angel Ezquerra
hgignore: ignore the PyCharm workspace folder
r22945 .idea/*
Philippe Pepiot
perf: add asv benchmarks...
r30406 .asv/*
Martin Geisler
i18n: let Makefile generate i18n/hg.pot...
r7648 i18n/hg.pot
Martin Geisler
i18n: new build_mo command for setup.py...
r7649 locale/*/LC_MESSAGES/hg.mo
Yuya Nishihara
setup: add command to generate index of extensions...
r14538 hgext/__index__.py
Bryan O'Sullivan
Switch to new syntax for .hgignore files....
r1270
Gregory Szorc
rust: implementation of `hg`...
r35587 rust/target/
Yuya Nishihara
rust-chg: add project skeleton...
r40003 rust/*/target/
Gregory Szorc
rust: implementation of `hg`...
r35587
Boris Feld
packaging: add make target for linux wheels...
r32080 # Generated wheels
wheelhouse/
Bryan O'Sullivan
Switch to new syntax for .hgignore files....
r1270 syntax: regexp
Thomas Arendsen Hein
Ignore test error files, protect dot in .pc/
r794 ^\.pc/
Brendan Cully
Ignore eclipse droppings
r7439 ^\.(pydev)?project
Laurens Holst
ignore: add files present in the hackable-hg windows distribution
r15702
# hackable windows distribution additions
Mads Kiilerich
update .hgignore for hackable with Python 2.7
r16537 ^hg-python
Laurens Holst
ignore: add files present in the hackable-hg windows distribution
r15702 ^hg.py$