Hi,
On 18/02/2025 18.26, Mads Kiilerich wrote:
I am not using evolve. To avoid landing it just based on blind trust,
can you say more about how it has been tested and how others can test it?
What commands / operations will exercise these 3 wire commands (and fail
without the patch)? That will provide some confidence in correctness and
completeness.
In a test, I found the following:
Without the patch, `hg pull` (from a test repository on Kallithea
containing obsmarkers and topics; I didn’t test without these) requires
authentication, that is not normally required, in these cases:
- with the evolve extension enabled on both server and client because
the client sends the evoext_obshashrange_v1 command
- with the topic extension enabled on both server and client (hg-evolve
== 11.1.6) because the client sends the tns_heads command
- with the topic extension enabled on both server and client (hg-evolve
== 11.0.2) because the client sends the _exttopics_heads command
With the patch, `hg pull` doesn’t require authentication in these cases.
Since these 3 wire commands are read only, I assume that all topic
related writes come as meta data when pushing commits?
The topic name is part of the changeset. I do not know if further topic
metadata is transferred when pushing them.
The evoext_obshashrange_v1 is used for obsmarker discovery, not
obsmarker exchange.
This context might be too much to include in the commit message and too
tricky to set up in an automated test, but a discussion here on mail
would give confidence.
/Mads
_______________________________________________
kallithea-general mailing list
[email protected]
https://lists.sfconservancy.org/mailman/listinfo/kallithea-general