Re: Testing an RC of evolve 11.0.0 and topic 1.0.0

2023-02-13 Thread Georges Racinet
12.0, push to a server with hg-evolve 10.5? Can I simulate that from a Python interpreter already? - will 11.0 be required to support the upcoming Mercurial 6.4? Best, -- Georges Racinet https://octobus.net, https://about.heptapod.host, https://heptapod.net GPG: BF5456F4DC625443849B6E58EE20CA44EF6

Re: call for Emacs testers (and opinion) native support of hg ci -i

2022-10-11 Thread Georges Racinet
, -- Georges Racinet https://octobus.net, https://heptapod.net GPG: BF5456F4DC625443849B6E58EE20CA44EF691D39, sur serveurs publics ___ Mercurial-devel mailing list Mercurial-devel@lists.mercurial-scm.org https://lists.mercurial-scm.org/mailman/listinfo

Heptapod CI: OSUOSL Linux runners transition and sharding

2022-06-18 Thread Georges Racinet
of 2 jobs per runner on foss.h.n shared runners. On the machines that are about to be decommisioned, that means reserving a whole CPU with 8 cores, even for single-threaded jobs. -- Georges Racinet https://octobus.net, https://about.heptapod.host, https://heptapod.net GPG

Re: Moving away from Phabricator

2022-02-28 Thread Georges Racinet
mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel -- Georges Racinet https://octobus.net,https://heptapod.net GPG: BF5456F4DC625443849B6E58EE20CA44EF691D39, sur serveurs publics ___ Mercurial

Heptapod mini-sprint on Nov 5th

2021-10-28 Thread Georges Racinet
ideas, but I don't want to force anything. Our timezone is, or rather will be, CET, or if you prefer UTC+1. Of course people from other timezones are welcome to join when they can! I'll be on leave until Nov 3rd, watching the mailing-lists only very loosely. Best, -- Georges Racinet https

D11703: rust-nodemap: backed out mitigation for issue 6554

2021-10-19 Thread gracinet (Georges Racinet)
gracinet created this revision. Herald added a reviewer: hg-reviewers. Herald added a subscriber: mercurial-patches. REVISION SUMMARY This is a backout of changeset 3fffb48539ee . Issue 6554 is now considered

D11238: rust-nodemap: falling back to C impl as mitigation

2021-08-02 Thread gracinet (Georges Racinet)
gracinet created this revision. Herald added a reviewer: hg-reviewers. Herald added a subscriber: mercurial-patches. REVISION SUMMARY This is a mitigation for https://bz.mercurial-scm.org/show_bug.cgi?id=6554 We see sometimes almost all data except the most recent revisions removed from

D11204: hgwebdir: avoid systematic full garbage collection

2021-07-20 Thread gracinet (Georges Racinet)
gracinet created this revision. Herald added a reviewer: hg-reviewers. Herald added a subscriber: mercurial-patches. REVISION SUMMARY Forcing a systematic full garbage collection upon each request can serioulsy harm performance. This is reported as

Re: [PATCH STABLE] cext: fix memory leak in phases computation

2021-06-06 Thread Georges Racinet
On 6/7/21 12:29 AM, Georges Racinet wrote: > # HG changeset patch > # User Georges Racinet > # Date 1622935470 -7200 > # Sun Jun 06 01:24:30 2021 +0200 > # Branch stable > # Node ID be560b55eb7cfe25c68fb6fab5417fab6688cf84 > # Parent 5ac0f2a8ba7205266a206ad8da89a7917

[PATCH STABLE] cext: fix memory leak in phases computation

2021-06-06 Thread Georges Racinet
# HG changeset patch # User Georges Racinet # Date 1622935470 -7200 # Sun Jun 06 01:24:30 2021 +0200 # Branch stable # Node ID be560b55eb7cfe25c68fb6fab5417fab6688cf84 # Parent 5ac0f2a8ba7205266a206ad8da89a79173e8efea # EXP-Topic memleak-phases cext: fix memory leak in phases computation

Octobus monthly mini-sprints

2021-06-01 Thread Georges Racinet
od and IRC channels in other cases. -- Georges Racinet https://octobus.net, https://about.heptapod.host, https://heptapod.net GPG: BF5456F4DC625443849B6E58EE20CA44EF691D39, sur serveurs publics ___ Mercurial-devel mailing list Mercurial-devel@mercurial-scm

Re: [PATCH 3 of 3 STABLE] repoview: separate concerns in _filteredrepotypes comment

2021-04-26 Thread Georges Racinet
for capabilities, one for each iteration of discovery etc, so this can pile up in a few days for a moderately busy server. Heptapod ≥ 0.20.5 has a direct mitigation. Best, On 4/26/21 12:19 PM, Georges Racinet wrote: > # HG changeset patch > # User Georges Racinet > # Date 1619274605 -7200 > #

[PATCH 3 of 3 STABLE] repoview: separate concerns in _filteredrepotypes comment

2021-04-26 Thread Georges Racinet
# HG changeset patch # User Georges Racinet # Date 1619274605 -7200 # Sat Apr 24 16:30:05 2021 +0200 # Branch stable # Node ID 11011fd630710cce991c9deb949ae85a85651b9a # Parent 46db86edf8f279063d6f9d5dd673dc88da8b83cf # EXP-Topic memleak-repo-class repoview: separate concerns

[PATCH 1 of 3 STABLE] repoview: style change in newtype() cache handling

2021-04-26 Thread Georges Racinet
# HG changeset patch # User Georges Racinet # Date 1619271999 -7200 # Sat Apr 24 15:46:39 2021 +0200 # Branch stable # Node ID 125fe190f484d396abc93428e3bd58b0b7455c24 # Parent 77e73827a02db25dc675b0afe552f24c807c741d # EXP-Topic memleak-repo-class repoview: style change in newtype() cache

[PATCH 2 of 3 STABLE] repoview: fix memory leak of filtered repo classes

2021-04-26 Thread Georges Racinet
# HG changeset patch # User Georges Racinet # Date 1619195453 -7200 # Fri Apr 23 18:30:53 2021 +0200 # Branch stable # Node ID 46db86edf8f279063d6f9d5dd673dc88da8b83cf # Parent 125fe190f484d396abc93428e3bd58b0b7455c24 # EXP-Topic memleak-repo-class repoview: fix memory leak of filtered repo

Re: Getting the revisions of .hgtags programatically

2021-01-24 Thread Georges Racinet
eptapod.net/heptapod/hgitaly/-/issues/5 Best, -- Georges Racinet https://octobus.net, https://about.heptapod.host, https://heptapod.net GPG: BF5456F4DC625443849B6E58EE20CA44EF691D39, sur serveurs publics ___ Mercurial-devel mailing list Mercurial-devel@mercurial-

Heptapod 0.18.0 released

2020-12-21 Thread Georges Racinet
od-0180rc2-released-with-rust-in-mercurial#rust -- Georges Racinet https://octobus.net, https://about.heptapod.host, https://heptapod.net GPG: BF5456F4DC625443849B6E58EE20CA44EF691D39, sur serveurs publics ___ Mercurial-devel mailing list Mercurial-devel

Re: Test notifications | Pipeline #358 has failed for branch/default | c086d56d

2020-12-02 Thread Georges Racinet
Hi, That was me testing that upgrade tomorrow should really manage to notify the mailing-list upon build failures. Cheers, -- Georges Racinet https://octobus.net, https://about.heptapod.host, https://heptapod.net GPG: BF5456F4DC625443849B6E58EE20CA44EF691D39, sur serveurs publics

Integration tests: mercurial-testhelpers

2020-11-23 Thread Georges Racinet
it with pytest works (it does). [4] https://foss.heptapod.net/mercurial/testhelpers/-/blob/branch/default/README.md [5] of course, that means not removing any existing case until it's run by the main runner automatically. -- Georges Racinet https://octobus.net, https://about.heptapod.host, https

Re: Heptapod 0.17 released

2020-11-23 Thread Georges Racinet
On 11/23/20 8:16 PM, Augie Fackler wrote: > > >> On Nov 23, 2020, at 09:31, Georges Racinet >> mailto:georges.raci...@octobus.net>> wrote: >> >> - Mercurial native mode (very experimental, don't activate at all on >> production servers). >> >

Heptapod 0.17 released

2020-11-23 Thread Georges Racinet
nouncement [2]. Overall an important release for us, we hope you'll enjoy it. Best, [1] https://heptapod.net/heptapod-0.17.0.html#heptapod-0.17.0 [2] https://heptapod.net/heptapod-0170rc1-released-with-3-tech-previews.html#heptapod-0170rc1-released-with-3-tech-previews -- Georges Rac

Re: Improving the CI experience

2020-09-29 Thread Georges Racinet
lds. > To further drive the point home, I'm not comfortable recommending > Heptapod for the project or anything of that sort yet, even ruling out > personal preferences for workflow. Maybe we can have that discussion > in a few months, who knows. I broadly agree

Heptapod news: doc sprint, versions 0.14 and 0.15

2020-07-17 Thread Georges Racinet
week.     We'll probably stay a few days on GitLab 12.10 after it becomes obsolete. Once Heptapod 0.15 is out, we'll have almost two months of stability, during which we'll turn ourselves a bit more towards Mercurial features and user experience improvements. Best, -- Georges Racinet https

Heptapod 0.13.0 "dual python" released

2020-06-02 Thread Georges Racinet
. -- Georges Racinet https://octobus.net, https://about.heptapod.host, https://heptapod.net GPG: BF5456F4DC625443849B6E58EE20CA44EF691D39, sur serveurs publics signature.asc Description: OpenPGP digital signature ___ Mercurial-devel mailing list Mercurial

Extensions: py3 compatibility metadata

2020-05-13 Thread Georges Racinet
Hi all, I don't think we have anything for third party extensions to claim their compatibility with Mercurial on Python 3. Would it be a good idea to add new metadata, such as `py3testedwith` or `py3minimumhgversion`? I personally would find the latter to be enough. Cheers, -- Georges

Re: Proposed PEP on Python C API

2020-04-14 Thread Georges Racinet
com/dgrunwald/rust-cpython/pull/211 [2] https://github.com/pyhandle -- Georges Racinet https://octobus.net, https://heptapod.net GPG: BF5456F4DC625443849B6E58EE20CA44EF691D39, sur serveurs publics signature.asc Description: OpenPGP digital signature ___

Re: mercurial.host, the Heptapod commercial service

2020-04-11 Thread Georges Racinet
Hi, On 3/23/20 3:23 PM, Augie Fackler wrote: > (-mercurial@) > >> On Mar 22, 2020, at 17:29, Georges Racinet >> wrote: >> >> Hi everybody, >> >> Heptapod [1] has made really good progress lately. As a result, we're >> almost ready to laun

Free public beta of heptapod.host opening now.

2020-04-11 Thread Georges Racinet
also https://heptapod.net/pages/contact-us.html#contact-us) [3] https://heptapod.net/pages/tuto-bb-import.html [4] https://heptapod.net/heptapod-0120-released-featuring-gitlab-12.html#heptapod-0120-released-featuring-gitlab-12 -- Georges Racinet https://octobus.net, https://heptapod.net, https

Re: mercurial.host, the Heptapod commercial service

2020-03-24 Thread Georges Racinet
Hi, On 3/23/20 3:53 PM, Anton Shestakov wrote: > On Mon, 23 Mar 2020 10:23:05 -0400 > Augie Fackler wrote: > >>> On Mar 22, 2020, at 17:29, Georges Racinet >>> wrote: >>> >>> We've already bought that domain name, but as a courtesy to the >>

mercurial.host, the Heptapod commercial service

2020-03-22 Thread Georges Racinet
do you think ? Take care, [1] for those who wouldn't know what I'm talking about, see https://heptapod.net [2] see https://clever-cloud.com/en/heptapod -- Georges Racinet https://octobus.net, https://heptapod.net GPG: BF5456F4DC625443849B6E58EE20CA44EF691D39, sur serveurs publics

D8161: rust-nodemap: also clear Rust data in `clearcaches`

2020-03-11 Thread gracinet (Georges Racinet)
Closed by commit rHGcadcc8c20860: rust-nodemap: also clear Rust data in `clearcaches` (authored by gracinet). This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review". REPOSITORY rHG Mercurial

D8160: rust-nodemap: add binding to `nodemap_update_data`

2020-03-11 Thread gracinet (Georges Racinet)
Closed by commit rHG15febf99a9c6: rust-nodemap: add binding to `nodemap_update_data` (authored by gracinet). This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review". REPOSITORY rHG Mercurial

D8159: rust-nodemap: add binding for `nodemap_data_incremental`

2020-03-11 Thread gracinet (Georges Racinet)
Closed by commit rHG5bbf887275b0: rust-nodemap: add binding for `nodemap_data_incremental` (authored by gracinet). This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review". REPOSITORY rHG

D8158: rust-nodemap: add binding for `nodemap_data_all`

2020-03-11 Thread gracinet (Georges Racinet)
Closed by commit rHGb581231ae9d1: rust-nodemap: add binding for `nodemap_data_all` (authored by gracinet). This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review". REPOSITORY rHG Mercurial

D8152: revlog: using two new functions in C capsule from Rust code

2020-03-11 Thread gracinet (Georges Racinet)
Closed by commit rHG166349510398: revlog: using two new functions in C capsule from Rust code (authored by gracinet). This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review". REPOSITORY rHG

D8156: rust-nodemap: add utils for propagating errors

2020-03-11 Thread gracinet (Georges Racinet)
python/src/revlog.rs b/rust/hg-cpython/src/revlog.rs --- a/rust/hg-cpython/src/revlog.rs +++ b/rust/hg-cpython/src/revlog.rs @@ -1,16 +1,16 @@ // revlog.rs // -// Copyright 2019 Georges Racinet +// Copyright 2019-2020 Georges Racinet // // This software may be used and distributed according to

D8155: rust-nodemap: add utils to create `Node`s from Python objects

2020-03-11 Thread gracinet (Georges Racinet)
Closed by commit rHGd738b7a18438: rust-nodemap: add utils to create `Node`s from Python objects (authored by gracinet). This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review". REPOSITORY rHG

D8154: rust-index: add `append` method to cindex/Index

2020-03-11 Thread gracinet (Georges Racinet)
Closed by commit rHGcefd130c98be: rust-index: add `append` method to cindex/Index (authored by gracinet). This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review". REPOSITORY rHG Mercurial

D8153: rust-index: moved constructor in separate impl block

2020-03-11 Thread gracinet (Georges Racinet)
Closed by commit rHG887d0f921b34: rust-index: moved constructor in separate impl block (authored by gracinet). This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review". REPOSITORY rHG Mercurial

D7819: rust-nodemap: core implementation for shortest

2020-02-26 Thread gracinet (Georges Racinet)
Closed by commit rHG0e8a9c0fbc8c: rust-nodemap: core implementation for shortest (authored by gracinet). This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review". REPOSITORY rHG Mercurial

D8097: rust-nodemap: accounting for dead blocks

2020-02-26 Thread gracinet (Georges Racinet)
Closed by commit rHG706c1bd7f71c: rust-nodemap: accounting for dead blocks (authored by gracinet). This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review". REPOSITORY rHG Mercurial CHANGES

D8098: rust-nodemap: a method for full invalidation

2020-02-26 Thread gracinet (Georges Racinet)
Closed by commit rHGbbc61f36733c: rust-nodemap: a method for full invalidation (authored by gracinet). This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review". REPOSITORY rHG Mercurial CHANGES

D7797: rust-nodemap: pure Rust example

2020-02-26 Thread gracinet (Georges Racinet)
rust/hg-core/examples/nodemap/main.rs CHANGE DETAILS diff --git a/rust/hg-core/examples/nodemap/main.rs b/rust/hg-core/examples/nodemap/main.rs new file mode 100644 --- /dev/null +++ b/rust/hg-core/examples/nodemap/main.rs @@ -0,0 +1,146 @@ +// Copyright 2019-2020 Georges Racinet +// +// This so

D7798: rust-nodemap: special case for prefixes of NULL_NODE

2020-02-26 Thread gracinet (Georges Racinet)
Closed by commit rHG895934342631: rust-nodemap: special case for prefixes of NULL_NODE (authored by gracinet). This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review". REPOSITORY rHG Mercurial

D7796: rust-nodemap: input/output primitives

2020-02-26 Thread gracinet (Georges Racinet)
Closed by commit rHGc3cc881aaa17: rust-nodemap: input/output primitives (authored by gracinet). gracinet marked an inline comment as done. This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review".

D7795: rust-nodemap: insert method

2020-02-12 Thread gracinet (Georges Racinet)
Closed by commit rHGd2da8667125b: rust-nodemap: insert method (authored by gracinet). This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review". CHANGED PRIOR TO COMMIT

D8019: rust-node: avoid meaningless read at the end of odd prefix

2020-01-28 Thread gracinet (Georges Racinet)
Closed by commit rHGbe52b7372ec2: rust-node: avoid meaningless read at the end of odd prefix (authored by gracinet). This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review". REPOSITORY rHG

D8019: rust-node: avoid meaningless read at the end of odd prefix

2020-01-27 Thread gracinet (Georges Racinet)
gracinet created this revision. Herald added subscribers: mercurial-devel, kevincox. Herald added a reviewer: hg-reviewers. REVISION SUMMARY This should be heavily factored out by the CPU branch predictor anyway. REPOSITORY rHG Mercurial BRANCH default REVISION DETAIL

D7794: rust-nodemap: generic NodeTreeVisitor

2020-01-27 Thread gracinet (Georges Racinet)
Closed by commit rHG796d05f3fa84: rust-nodemap: generic NodeTreeVisitor (authored by gracinet). gracinet marked an inline comment as done. This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review".

D7791: rust-nodemap: NodeMap trait with simplest implementation

2020-01-27 Thread gracinet (Georges Racinet)
Closed by commit rHGe52401a95b94: rust-nodemap: NodeMap trait with simplest implementation (authored by gracinet). gracinet marked 2 inline comments as done. This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state

D7793: rust-nodemap: mutable NodeTree data structure

2020-01-27 Thread gracinet (Georges Racinet)
Closed by commit rHGa19331456d48: rust-nodemap: mutable NodeTree data structure (authored by gracinet). This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review". REPOSITORY rHG Mercurial CHANGES

D7792: rust-nodemap: abstracting the indexing

2020-01-27 Thread gracinet (Georges Racinet)
Closed by commit rHG220d4d2e3185: rust-nodemap: abstracting the indexing (authored by gracinet). gracinet marked an inline comment as done. This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review".

D7794: rust-nodemap: generic NodeTreeVisitor

2020-01-27 Thread gracinet (Georges Racinet)
gracinet added inline comments. gracinet marked 2 inline comments as done. INLINE COMMENTS > martinvonz wrote in nodemap.rs:300 > would something like `block_index` be clearer? I found it to be clearer for the emitter, but in the iterator implementation, it expresses what's to be done next,

D7790: rust-node: handling binary Node prefix

2020-01-27 Thread gracinet (Georges Racinet)
gracinet added inline comments. INLINE COMMENTS > martinvonz wrote in node.rs:226 > Should we check here that `i < self.len()`? I'm especially thinking of the > case of an odd-length prefix where we would otherwise silently return 0. yes, indeed. current callers from `nodemap` work either on

D7790: rust-node: handling binary Node prefix

2020-01-27 Thread gracinet (Georges Racinet)
Closed by commit rHG9896a8d0d3d2: rust-node: handling binary Node prefix (authored by gracinet). This revision was automatically updated to reflect the committed changes. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D7790?vs=19630=19643 CHANGES SINCE

D7789: rust-revlog: a trait for the revlog index

2020-01-27 Thread gracinet (Georges Racinet)
Closed by commit rHG3fb39dc2e356: rust-revlog: a trait for the revlog index (authored by gracinet). This revision was automatically updated to reflect the committed changes. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D7789?vs=19629=19642 CHANGES SINCE

D7819: rust-nodemap: core implementation for shortest

2020-01-27 Thread gracinet (Georges Racinet)
gracinet marked an inline comment as done. gracinet updated this revision to Diff 19640. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D7819?vs=19639=19640 BRANCH default CHANGES SINCE LAST ACTION https://phab.mercurial-scm.org/D7819/new/ REVISION

D7819: rust-nodemap: core implementation for shortest

2020-01-27 Thread gracinet (Georges Racinet)
gracinet added inline comments. gracinet marked 3 inline comments as done. INLINE COMMENTS > kevincox wrote in nodemap.rs:337 > Can you describe the return value in the doc comment. Done > martinvonz wrote in nodemap.rs:575 > I'm fine with either. We'll expose it as "shortest" in the python

D7796: rust-nodemap: input/output primitives

2020-01-27 Thread gracinet (Georges Racinet)
gracinet added inline comments. gracinet marked 2 inline comments as done. INLINE COMMENTS > kevincox wrote in nodemap.rs:268 > I thought about this more and I think I am okay doing it this way. It seems > like this should be well defined as long as there is no padding. However on > that note

D7794: rust-nodemap: generic NodeTreeVisitor

2020-01-27 Thread gracinet (Georges Racinet)
gracinet added inline comments. gracinet marked 2 inline comments as done. INLINE COMMENTS > martinvonz wrote in nodemap.rs:264-269 > There will only be a valid result if this is a leaf, so it might be better to > combine `leaf` and `opt` into one `Option>` so the caller > cannot mistake a

D7793: rust-nodemap: mutable NodeTree data structure

2020-01-27 Thread gracinet (Georges Racinet)
gracinet added inline comments. INLINE COMMENTS > kevincox wrote in nodemap.rs:158 > This strikes me as a weird name. The fact that it is an adjective rather than > a noun is a hint. Can you rename to answer "Growable what?" In a previous version, I was calling it `mutable` (also an adjective,

D7792: rust-nodemap: abstracting the indexing

2020-01-27 Thread gracinet (Georges Racinet)
gracinet added inline comments. gracinet marked 2 inline comments as done. INLINE COMMENTS > kevincox wrote in nodemap.rs:193 > I would add a `self.is_empty()` helper. It's good practice for anything that > has a `.len()`. Sure REPOSITORY rHG Mercurial CHANGES SINCE LAST ACTION

D7791: rust-nodemap: NodeMap trait with simplest implementation

2020-01-27 Thread gracinet (Georges Racinet)
gracinet added inline comments. gracinet marked 3 inline comments as done. INLINE COMMENTS > kevincox wrote in nodemap.rs:37 > Can you please add doc-comments for this? I find that documenting trait > methods is especially important. Sure, indeed it's more important than with the `impl`. >

D7790: rust-node: handling binary Node prefix

2020-01-27 Thread gracinet (Georges Racinet)
gracinet added a comment. > Depends on the definition of NodePrefixRef. I don't think there would be any extra allocation if you define it like this: pub enum NodePrefixRef<'a> { Full(&'a Node), Prefix(&'a NodePrefix), } That's an interesting idea,

D7819: rust-nodemap: core implementation for shortest

2020-01-27 Thread gracinet (Georges Racinet)
gracinet updated this revision to Diff 19639. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D7819?vs=19331=19639 BRANCH default CHANGES SINCE LAST ACTION https://phab.mercurial-scm.org/D7819/new/ REVISION DETAIL

D7797: rust-nodemap: pure Rust example

2020-01-27 Thread gracinet (Georges Racinet)
new file mode 100644 --- /dev/null +++ b/rust/hg-core/examples/nodemap/main.rs @@ -0,0 +1,150 @@ +// Copyright 2019-2020 Georges Racinet +// +// This software may be used and distributed according to the terms of the +// GNU General Public License version 2 or any later version. + +extern crate clap

D7798: rust-nodemap: special case for prefixes of NULL_NODE

2020-01-27 Thread gracinet (Georges Racinet)
gracinet updated this revision to Diff 19638. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D7798?vs=19330=19638 BRANCH default CHANGES SINCE LAST ACTION https://phab.mercurial-scm.org/D7798/new/ REVISION DETAIL

D7796: rust-nodemap: input/output primitives

2020-01-27 Thread gracinet (Georges Racinet)
gracinet edited the summary of this revision. gracinet updated this revision to Diff 19636. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D7796?vs=19329=19636 BRANCH default CHANGES SINCE LAST ACTION https://phab.mercurial-scm.org/D7796/new/

D7795: rust-nodemap: insert method

2020-01-27 Thread gracinet (Georges Racinet)
gracinet updated this revision to Diff 19635. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D7795?vs=19328=19635 BRANCH default CHANGES SINCE LAST ACTION https://phab.mercurial-scm.org/D7795/new/ REVISION DETAIL

D7794: rust-nodemap: generic NodeTreeVisitor

2020-01-27 Thread gracinet (Georges Racinet)
gracinet edited the summary of this revision. gracinet updated this revision to Diff 19634. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D7794?vs=19327=19634 BRANCH default CHANGES SINCE LAST ACTION https://phab.mercurial-scm.org/D7794/new/

D7793: rust-nodemap: mutable NodeTree data structure

2020-01-27 Thread gracinet (Georges Racinet)
gracinet updated this revision to Diff 19633. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D7793?vs=19326=19633 BRANCH default CHANGES SINCE LAST ACTION https://phab.mercurial-scm.org/D7793/new/ REVISION DETAIL

D7791: rust-nodemap: NodeMap trait with simplest implementation

2020-01-27 Thread gracinet (Georges Racinet)
gracinet retitled this revision from "rust-nodemap: NodeMap trait with simplest implementor" to "rust-nodemap: NodeMap trait with simplest implementation". gracinet updated this revision to Diff 19631. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE

D7792: rust-nodemap: abstracting the indexing

2020-01-27 Thread gracinet (Georges Racinet)
gracinet updated this revision to Diff 19632. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D7792?vs=19325=19632 BRANCH default CHANGES SINCE LAST ACTION https://phab.mercurial-scm.org/D7792/new/ REVISION DETAIL

D7790: rust-node: handling binary Node prefix

2020-01-27 Thread gracinet (Georges Racinet)
gracinet edited the summary of this revision. gracinet updated this revision to Diff 19630. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D7790?vs=19039=19630 BRANCH default CHANGES SINCE LAST ACTION https://phab.mercurial-scm.org/D7790/new/

D7789: rust-revlog: a trait for the revlog index

2020-01-27 Thread gracinet (Georges Racinet)
gracinet updated this revision to Diff 19629. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D7789?vs=19038=19629 BRANCH default CHANGES SINCE LAST ACTION https://phab.mercurial-scm.org/D7789/new/ REVISION DETAIL

D7789: rust-revlog: a trait for the revlog index

2020-01-23 Thread gracinet (Georges Racinet)
gracinet added a comment. @martinvonz yeah, probably wrote the doc-comment too fast Of course it's meant to match what revlog.c does, since the first implementation willl actually be re-exposure of the C version REPOSITORY rHG Mercurial CHANGES SINCE LAST ACTION

D7788: rust-node: binary Node ID and conversion utilities

2020-01-22 Thread gracinet (Georges Racinet)
st/hg-core/Cargo.toml rust/hg-core/src/revlog.rs rust/hg-core/src/revlog/node.rs CHANGE DETAILS diff --git a/rust/hg-core/src/revlog/node.rs b/rust/hg-core/src/revlog/node.rs new file mode 100644 --- /dev/null +++ b/rust/hg-core/src/revlog/node.rs @@ -0,0 +1,191 @@ +// Copyright 2019-2020 Georg

D7787: rust-nodemap: building blocks for nodetree structures

2020-01-22 Thread gracinet (Georges Racinet)
rs CHANGE DETAILS diff --git a/rust/hg-core/src/revlog/nodemap.rs b/rust/hg-core/src/revlog/nodemap.rs new file mode 100644 --- /dev/null +++ b/rust/hg-core/src/revlog/nodemap.rs @@ -0,0 +1,160 @@ +// Copyright 2018-2020 Georges Racinet +// and Mercurial contributors +// +// This so

D7788: rust-node: binary Node ID and conversion utilities

2020-01-22 Thread gracinet (Georges Racinet)
gracinet added a comment. gracinet marked 6 inline comments as done. As the new commit description explains, I've done all I could to make the change of hash format easier I should add that my other colleagues at Octobus seem also to be involved in the improvement of hashing, there's no

D7788: rust-node: binary Node ID and conversion utilities

2020-01-22 Thread gracinet (Georges Racinet)
s rust/hg-core/src/revlog/node.rs CHANGE DETAILS diff --git a/rust/hg-core/src/revlog/node.rs b/rust/hg-core/src/revlog/node.rs new file mode 100644 --- /dev/null +++ b/rust/hg-core/src/revlog/node.rs @@ -0,0 +1,191 @@ +// Copyright 2019-2020 Georges Racinet +// +// This software may be

D7819: rust-nodemap: core implementation for shortest

2020-01-22 Thread gracinet (Georges Racinet)
gracinet added inline comments. INLINE COMMENTS > kevincox wrote in nodemap.rs:575 > How about `unique_bin_prefix_len`? I have personally nothing against this, and actually find this `shortest` not to be clear, but… it's also the name in the C implementation and the Python API, IIRC.

D7787: rust-nodemap: building blocks for nodetree structures

2020-01-22 Thread gracinet (Georges Racinet)
-2020 Georges Racinet +// and Mercurial contributors +// +// This software may be used and distributed according to the terms of the +// GNU General Public License version 2 or any later version. +//! Indexing facilities for fast retrieval of `Revision` from `Node` +//! +//! This provides

D7787: rust-nodemap: building blocks for nodetree structures

2020-01-22 Thread gracinet (Georges Racinet)
gracinet added a comment. These are done, thanks for the remarks. REPOSITORY rHG Mercurial CHANGES SINCE LAST ACTION https://phab.mercurial-scm.org/D7787/new/ REVISION DETAIL https://phab.mercurial-scm.org/D7787 To: gracinet, #hg-reviewers, kevincox Cc: martinvonz, durin42, kevincox,

D7787: rust-nodemap: building blocks for nodetree structures

2020-01-22 Thread gracinet (Georges Racinet)
/nodemap.rs @@ -0,0 +1,160 @@ +// Copyright 2018-2020 Georges Racinet +// and Mercurial contributors +// +// This software may be used and distributed according to the terms of the +// GNU General Public License version 2 or any later version. +//! Indexing facilities for fast retrieval

D7791: rust-nodemap: NodeMap trait with simplest implementor

2020-01-22 Thread gracinet (Georges Racinet)
gracinet added inline comments. INLINE COMMENTS > martinvonz wrote in nodemap.rs:150 > I find `Deref + Send` hard to understand. I think it would > be helpful to name it. Could we at least define an alias for it? > > Perhaps it's even better to define a trait for it and add named methods on >

D7787: rust-nodemap: building blocks for nodetree structures

2020-01-22 Thread gracinet (Georges Racinet)
gracinet added inline comments. INLINE COMMENTS > martinvonz wrote in nodemap.rs:8 > i think s/valency/arity/ is a more common term for it yes, and valency is actually almost incorrect actually in that case, it turns out REPOSITORY rHG Mercurial CHANGES SINCE LAST ACTION

D7787: rust-nodemap: building blocks for nodetree structures

2020-01-22 Thread gracinet (Georges Racinet)
gracinet added a comment. @martinvonz > Just a few nits here, but it looks like we're expecting an update on this series anyway, so maybe you can address them. No problem with these. I'll be doing a swipe on the whole series today and will include them. INLINE COMMENTS >

D7952: rust: add a README

2020-01-21 Thread gracinet (Georges Racinet)
gracinet added inline comments. INLINE COMMENTS > valentin.gatienbaron wrote in README.rst:25 > When I tested, setting HGMODULEPOLICY didn't work, perhaps because of what > Raphael said. Both Raphaël and I were saying the same thin, perhaps a bit partially. Here's the whole picture: -

D7952: rust: add a README

2020-01-21 Thread gracinet (Georges Racinet)
gracinet added a comment. "deprecate" was a bit too strong. Actually I'd like to downgrade `HGWITHRUSTEXT` to be something that'll be useful to play with alternative ways of building the Rust extension(s). Example: if someone wants to experiment with PyO3. REPOSITORY rHG Mercurial

D7952: rust: add a README

2020-01-21 Thread gracinet (Georges Racinet)
gracinet added a comment. My general feeling is that I'd like to deprecate `HGWITHRUSTEXT`. We now have `python setup.py --rust [build|install|etc]` and the coincidental `make local PURE=--rust` (works because `$PURE`, while meant to be for `--pure` is inserted blindly at the right

D7790: rust-node: handling binary Node prefix

2020-01-20 Thread gracinet (Georges Racinet)
gracinet added a comment. @martinvonz in this code, we're in competition with the C implementation, which does something similar. Switching to a full u8 per nybble is more than a few minutes, it means changing the ownership model completely. Also, it introduces a new allocation and a

D7788: rust-node: binary Node and conversion utilities

2020-01-20 Thread gracinet (Georges Racinet)
gracinet added a comment. @durin42 @martinvonz we might have a nice path forward with this, with the suggestion of @kevincox to make `Node` a truly defined type, not just an alias, with a private member for the bytes. Indeed I find it important to know if a node information is complete

Heptapod 0.8.0 (SSH) released

2020-01-17 Thread Georges Racinet
]. Cheers, and happy 2020 everyone. [1] https://heptapod.net/heptapod-080-released.html [2] https://www.clever-cloud.com/en/heptapod -- Georges Racinet https://octobus.net, https://heptapod.net GPG: BF5456F4DC625443849B6E58EE20CA44EF691D39, sur serveurs publics signature.asc Description

D7796: rust-nodemap: input/output primitives

2020-01-16 Thread gracinet (Georges Racinet)
gracinet added a comment. @kevincox (replying hastily because I'm also finishing something unrelated today). Doesn't `mem::size_of` guarantee to take any padding into account? At least that's what the doc seems to say: https://doc.rust-lang.org/std/mem/fn.size_of.html REPOSITORY rHG

D7787: rust-nodemap: building blocks for nodetree structures

2020-01-15 Thread gracinet (Georges Racinet)
gracinet added inline comments. gracinet marked 2 inline comments as done. INLINE COMMENTS > gracinet wrote in nodemap.rs:111 > Nice, thanks for the tip So, that gives formatting with braces, hence for consistency I changed the `block!` macro, too. I didn't keep the hexadecimal formatting,

D7819: rust-nodemap: core implementation for shortest

2020-01-15 Thread gracinet (Georges Racinet)
gracinet updated this revision to Diff 19331. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D7819?vs=19139=19331 BRANCH default CHANGES SINCE LAST ACTION https://phab.mercurial-scm.org/D7819/new/ REVISION DETAIL

D7798: rust-nodemap: special case for prefixes of NULL_NODE

2020-01-15 Thread gracinet (Georges Racinet)
gracinet updated this revision to Diff 19330. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D7798?vs=19138=19330 BRANCH default CHANGES SINCE LAST ACTION https://phab.mercurial-scm.org/D7798/new/ REVISION DETAIL

D7796: rust-nodemap: input/output primitives

2020-01-15 Thread gracinet (Georges Racinet)
gracinet updated this revision to Diff 19329. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D7796?vs=19137=19329 BRANCH default CHANGES SINCE LAST ACTION https://phab.mercurial-scm.org/D7796/new/ REVISION DETAIL

D7795: rust-nodemap: insert method

2020-01-15 Thread gracinet (Georges Racinet)
gracinet updated this revision to Diff 19328. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D7795?vs=19044=19328 BRANCH default CHANGES SINCE LAST ACTION https://phab.mercurial-scm.org/D7795/new/ REVISION DETAIL

D7788: rust-node: binary Node and conversion utilities

2020-01-15 Thread gracinet (Georges Racinet)
ot;); +/// assert_eq!(b"to trim ".trim(), b"to trim"); +/// assert_eq!(b" to trim".trim(), b"to trim"); /// ``` fn trim() -> &[u8] { self.trim_start().trim_end() diff --git a/rust/hg-core/src/revlog/node.rs b/rust/hg-core/src/revlog/no

  1   2   3   4   5   6   >