uhop / node-re2

node.js bindings for RE2: fast, safe alternative to backtracking regular expression engines.
Other
479 stars 53 forks source link

Update to re2 2023-06-02 #173

Closed stefanor closed 1 year ago

stefanor commented 1 year ago

StringPiece is now an absl::string_view, with a slightly different API

stefanor commented 1 year ago

Ah, right. Tests are failing because we need abseil available for the build. The linux side I could easily contribute the CI bits. But Windows and macOS are less easy for me to contribute.

uhop commented 1 year ago

We are in the same boat. :-)

stefanor commented 1 year ago

Would you like to just vendor them like re2?

uhop commented 1 year ago

Yes, I think including them the same way (as a git submodule) makes sense.

uhop commented 1 year ago

One comment: we use C++20 to compile the project. IIRC, it has std::string_view defined. Do we really need more dependencies?

The question for google/re2 guys would be: is it possible to use the standard library implementation, if available, and pull dependencies only when truly needed?

stefanor commented 1 year ago

I think their plan is to migrate to c++17, eventually, but use abseil's string_view until then: https://groups.google.com/g/re2-dev/c/m1Hqx2cMkY0

Abseil is used for other things, too.

stefanor commented 1 year ago

Finally, CI is passing.

This is bundling a lot more abseil than I expected, but the MSVC complier seems to want them. Maybe its linker doesn't do --as-needed?

uhop commented 1 year ago

Published as 1.20.0.