##// END OF EJS Templates
templater: add subsetparents(rev, revset) function...
templater: add subsetparents(rev, revset) function Naming suggestions are welcome. And this could be flagged as an (ADVANCED) function since the primary use case is to draw a graph. This provides all data needed for drawing revisions graph filtered by revset, and allows us to implement a GUI graph viewer in some languages better than Python. A frontend grapher will be quite similar to our graphmod since subsetparents() just returns parent-child relations in the filtered sub graph. Frontend example: https://hg.sr.ht/~yuja/hgv/browse/default/core/hgchangesetgrapher.cpp However, the resulting graph will be simpler than the one "hg log -G" would generate because redundant edges are eliminated. This should be the same graph rendering strategy as TortoiseHg. This function could be implemented as a revset predicate, but that would mean the scanning state couldn't be cached and thus slow. Test cases are split to new file since test-template-functions.t is quite big and we'll need a new branchy repository anyway.

File last commit:

r45062:245aec57 default
r45083:7cd5c096 default
Show More
Cargo.toml
32 lines | 785 B | application/toml | TOMLLexer
Georges Racinet
rust-cpython: start cpython crate bindings...
r41001 [package]
name = "hg-cpython"
version = "0.1.0"
authors = ["Georges Racinet <gracinet@anybox.fr>"]
Raphaël Gomès
rust: switch hg-core and hg-cpython to rust 2018 edition...
r42828 edition = "2018"
Georges Racinet
rust-cpython: start cpython crate bindings...
r41001
[lib]
name='rusthg'
crate-type = ["cdylib"]
[features]
Georges Racinet
rust-cpython: build and support for Python3...
r41021 default = ["python27"]
Raphaël Gomès
rust-re2: add wrapper for calling Re2 from Rust...
r44786 with-re2 = ["hg-core/with-re2"]
Georges Racinet
rust-cpython: start cpython crate bindings...
r41001
Yuya Nishihara
rust-cpython: prepare for writing tests that require libpython...
r43583 # Features to build an extension module:
Yuya Nishihara
rust-cpython: drop direct dependency on python(27|3)_sys...
r43485 python27 = ["cpython/python27-sys", "cpython/extension-module-2-7"]
Yuya Nishihara
rust-cpython: prepare for writing tests that require libpython...
r43583 python3 = ["cpython/python3-sys", "cpython/extension-module"]
Georges Racinet
rust-cpython: build and support for Python3...
r41021
Yuya Nishihara
rust-cpython: prepare for writing tests that require libpython...
r43583 # Enable one of these features to build a test executable linked to libpython:
# e.g. cargo test --no-default-features --features python27-bin
python27-bin = ["cpython/python27-sys"]
python3-bin = ["cpython/python3-sys"]
Georges Racinet
rust-cpython: start cpython crate bindings...
r41001
[dependencies]
Raphaël Gomès
rust-re2: add wrapper for calling Re2 from Rust...
r44786 hg-core = { path = "../hg-core"}
Georges Racinet
rust-cpython: start cpython crate bindings...
r41001 libc = '*'
Raphaël Gomès
rust-status: add trace-level logging for Rust status fallback for debugging...
r45062 log = "0.4.8"
Raphaël Gomès
rust: add logging utils...
r45027 simple_logger = "1.6.0"
Georges Racinet
rust-cpython: start cpython crate bindings...
r41001
[dependencies.cpython]
Yuya Nishihara
rust-cpython: bump cpython to 0.4 to switch to upstreamed PySharedRef
r44700 version = "0.4"
Georges Racinet
rust-cpython: start cpython crate bindings...
r41001 default-features = false