rushter / selectolax

Python binding to Modest and Lexbor engines (fast HTML5 parser with CSS selectors).
MIT License
1.11k stars 68 forks source link

Lexbor seems to be the preferred choice? #82

Closed benjaoming closed 4 months ago

benjaoming commented 1 year ago

Thanks for a great project!

I saw this in the README:

Selectolax supports two backends: Modest and Lexbor. By default, all examples use the Modest backend. Most of the features between backends are almost identical, but there are still some differences.

Currently, the Lexbor backend is in beta and missing some of the features.

It seems that development on Modest was stopped some years ago and the Modest README also says to use Lexbor.

Lexbor is version 3.0.4.

rushter commented 1 year ago

The development of lexbor have resumed recently. Personally, I still use Modest.

benjaoming commented 1 year ago

@rushter that's fair! If you don't feel like it's valuable to change it right now, then feel free to close the issue :+1:

Can also leave it open in case others have experience with how the two libraries currently compare and if the "beta" label makes sense.

lexborisov commented 1 year ago

@rushter @benjaoming

I don't quite understand so much love for the Modest project. Maybe the name is good :)

I wouldn't use Modest at all. Lexbor is much better, both architecturally and in terms of speed and resource consumption.

Also Lexbor is much better developed in terms of CSS. It supports CSSOM stylesheets, applying styles to html elements, and so on.

But here everyone decides for himself what he chooses.

rushter commented 1 year ago

I don't quite understand so much love for the Modest project. Maybe the name is good :)

Some of the features were missing. I need to check what's missing. Modest backend supports a little bit more features.

lexborisov commented 1 year ago

@rushter

I would be happy to explore and implement all the missing components. If you provide such a list, that would be great!

baseplate-admin commented 1 year ago

Hi is there any progress on this issue?

Last update to modest was almost 2 years ago

And there seems to be a new version of lexbor

rushter commented 1 year ago

Hi is there any progress on this issue?

Last update to modest was almost 2 years ago

And there seems to be a new version of lexbor

Can you please elaborate on this? What kind of issues do you have?

I can't replace Modest with lexbor because they behave differently. There will be two backends in the near future. I usually update lexbor when it gets major updates. It was update 3 months ago.

baseplate-admin commented 1 year ago

Sorry, I did not mean to offend you in any way.

I can't replace Modest with lexbor because they behave differently.

I was going to argue with you about this point.

There will be two backends in the near future.

But if you feel like having 2 backends is a good enough for selectolax. fair enough i wont complain ( but i would be really grateful if you considered moving to one backend )

I usually update lexbor when it gets major updates.

It seems like lexbor updated their engine with some improvements.

benjaoming commented 1 year ago

@baseplate-admin yes, definitely the point that @rushter makes is that selectolax also supports Lexbor.. so both Lexbor and Modest are supported, and this issue wasn't contending to remove support for Modest.

Using Modest can be a fine choice for some projects, but I'd argue that the new default should be Lexbor. But that shouldn't replace Modest, it can still be around for projects that need it.

There's also some text in the README that should be updated.