Hidden Commits in 4.3
Pierre-Yves David
pierre-yves.david at ens-lyon.org
Wed Apr 12 13:21:32 EDT 2017
TL;DR;
I had a productive video call with Siddharth Agarwal today. We should be
careful to not block the current path for completing
changeset-evolution, but they are way forward that would allow to make
progress on upstreaming Facebook work and improving local workflow while
avoiding introducing BC problematic to changeset-evolution completion.
I saw Ryan sent a longer an email on this thread. I'll check it up and
reply with more details on these way forward. (that won't happen today)
(yes this TL;DR; is a bit long in itself).
On 04/12/2017 12:20 AM, Kevin Bullock wrote:
>>> It sounds like there are no objections to the immediate 'hg hide' proposal, and the only points of contention are around the expected future interactions between hiding and exchanged obsolete markers. Is that an accurate assessment?
>>
>> ¿I'm quite confused? how do you end up interpreting:
>>
>> "this kills our ability to complete and ship changeset-evolution
>> to all Mercurial user in the next year or two."
>>
>> as:
>>
>> "there are no objections"?
>
> It's not at all clear to me that having a single changeset hiding mechanism in
> core prevents completing and shipping evolve. My understanding from discussion
> at the sprint is that obsolescence markers could be used as one source of
> hidden nodes, with no external change in behavior. Let's not engage in
> hyperbolic statements about the future of any given feature; let's discuss the
> tradeoffs of various approaches.
I'm trying to underline a reality here, not making hyperbolic statement.
We currently have:
1) a prototype for evolve, successfully used by actual people. (to solve
the target goal)
2) a Roadmap to smooth the rough edges and ship it to all users[1],
3) funding for that Roadmap,
4) available coder-s- to turn this funding into code (me and a colleague).
Items (3) and (4) above are new, and (finally!) make is possible to
envision changeset-evolution being completed in a not so distant future.
(I'm not aware of alternative plan to ship evolution)
There are proposals in this thread and related ones that breaks concept
heavily relied on by changeset-evolution (eg: global state, monotic
rewrite[3]), without providing alternative to the solutions these
concepts bring.
Moving forward with simply breaking this pillar-concepts holding
changeset-evolution blocks our path forward to complete and ship
evolution. This moves us,
* from: "I know how to ship evolution and have the resource to do so"
* to: "I do not know how to ship evolution".
Since I'm not aware of any alternative plan to complete and
ship-changeset evolution, that effectively kills our current ability to
bring changeset-evolution to completion in the foreseeable future.
[1] https://www.mercurial-scm.org/wiki/CEDRoadMap
[2] recent activity in the evolve extension:
* last 45 days: 286 new changesets,
* full year before that: 188 new changesets.
[3] https://www.mercurial-scm.org/wiki/CEDConcept
As pointed in the TL;DR; I had a productive discussion with Siddharth
Agarwal today. We see ways to move forward with upstreaming (yeah!) work
from Facebook to improves rewrite related workflows while being careful
about their impact on changeset evolution. In short some of the behavior
variants Facebook needs could be kept outside of Mercurial core backward
compatibility envelope (eg: with configuration) until we are sure we
have a way to completing-evolution with them.
I'll follow up more on these way forward once I've catch up with the
Ryan email that arrived while writing this one.
--
Pierre-Yves David
More information about the Mercurial-devel
mailing list