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

Reply via email to