Closed Neshram closed 8 months ago
Have there been any official efforts on migrating Jint v3?
Not yet.
Or is that awaiting Jint v3 eventually leaving "beta" state?
Yes - this is the case.
Now that Jint v3 has been released, this might become relevant again. I understand from another comment that AngleSharp.Js is currently not getting official attention, so I'm not expecting an upgrade anytime soon (completely understandable).
I wouldn't mind having a crack at it myself. But after locally trying to update the Nuget reference to Jint in the project, I can see there are a lot of breaking changes that need fixing.
I'm not that familiar with the Jint and AngleSharp.Js codebases, so it might be useful to give some pointers on what needs to be done?
Actually it might be better to essentially start from scratch.
I think a good roadmap / development agenda would be:
Usually, (3) is where it gets difficult. AngleSharp itself provides helpers for this (and depending on the approach the current code base still has / uses all these helpers): Attributes that indicate what and if so, how certain things should be used, e.g., that InnerHtml
on IDocument
is innerHTML
in JavaScript or how constructors (e.g., of CustomEvent
) should be delegated.
There are two approaches to bring the two together:
Right now the codebase uses (1) as (2) might be problematic regarding updates and maintainability.
I also have Jint v3 on the radar and I am happy that finally v3 was released. I would be super happy to spend some time on this; but right now I focus the little time I have for AngleSharp on making AngleSharp.Css a 1.0.0. More contributors or sponsors would certainly help to either get more work done quickly or have more time for this project.
Greetings,
Have there been any official efforts on migrating Jint v3? Or is that awaiting Jint v3 eventually leaving "beta" state?
I did some quick poking around and it looks like at minimum Jint has made a lot of member access modifiers more restrictive, including changing IConstructor from public to internal.