Mark Amery
Mark Amery
https://github.com/djacobs/PyAPNs/pull/167 was the only attempt that has been made to fix it, and I rejected it (as it introduced worse problems), so I assume that this is still an issue.
Hmmmmm... I definitely think it makes sense to implement a version of the algorithm *based* on the linear space refinement in which we explore the edit graph in both directions...
I'm gonna label this as planned for next release with the intent that I'll implement the idea of navigating the edit graph from both ends, but *not* actually implement the...
> Part of the space complexity can manifest as time complexity via the GC No, I don't think so - or at least, I don't think GC can possibly increase...
Ah, interesting. Yeah, that makes sense; I was assuming the cost of garbage collection would be proportional to the number of objects in need of collecting but *of course* that's...
I think I'm persuaded that it'd make sense from a performance perspective to make this change, but one thing still gives me pause, which is that the linear space refinement...
Hmm. I wonder if that consistently achieves results identical to the core Myers diff algorithm, though? (It's not immediately obvious to me whether there's any reasonable way to achieve that...
As part of fixing this issue, we should document *exactly* how `fuzzFactor` works in the README.
Hmm. So I see that this adds declarations of the functions that jsdiff exports but all parameters and return types are just set to `any`, which makes them kinda non-useful....
Ah, nice! That does indeed seem to work and I guess it'll do the trick.