AngleSharp / AngleSharp.Diffing

A library that makes it possible to compare two AngleSharp node lists and get a list of differences between them.
MIT License
37 stars 6 forks source link

Change strategy type #34

Closed SebastianStehle closed 1 year ago

SebastianStehle commented 1 year ago

I have no idea why this needs to be changed, but it only works when the strategy type is Specialized.

Types of Changes

Prerequisites

Please make sure you can check the following two boxes:

Contribution Type

What types of changes does your code introduce? Put an x in all the boxes that apply:

Description

[Place a meaningful description here.]

egil commented 1 year ago

The reason is related to the order in which the compares are executed. Specialized comparisons are executed after the generalized ones. We also have another issue. In the current implementation these two HTML elements would be considered equal: <input /> and <br />. That's obviously not correct.

After sleeping on it, I want to change the solution to this entirely, and instead make the element compare configurable, such that you can pass a boolean to it to make it enforce tag closing. Ill close this issue and push an update that would show up as a preview release in an hour or so.

SebastianStehle commented 1 year ago

Good to know. It is a little bit unexpected because usually just the order defines how filters are executed (see .NET Middleware).