nomeata / arbtt

arbtt, the automatic rule-based time-tracker
http://arbtt.nomeata.de/
GNU General Public License v2.0
311 stars 36 forks source link

Move to pcre2 #177

Open dvzrv opened 2 months ago

dvzrv commented 2 months ago

Hi! :wave:

I package pcre2 for Arch Linux. We are currently working on moving from pcre (unmaintained) to pcre2.

Not having any details on this project's situation: Would it be possible for this project to either drop the dependency on pcre-light or start relying on e.g. https://github.com/sjshuck/hs-pcre2 instead?

nomeata commented 2 months ago

It would certainly be possible. Is it a drop-in replacement, or is there a migration guide somewhere? Of course, patches are welcome :-)

nomeata commented 2 months ago

BTW, someone should probably update https://wiki.haskell.org/Regular_expressions to point people to pcre2 and mention that pcre is unmaintained.

martinvonwittich commented 2 months ago

Debian unfortunately seems to have removed arbtt from its repository due to this dependency :(

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1026136

nomeata commented 2 months ago

That was opened in December 2022, and nobody thought of informing upstream about it? That’s a bit unfortunate.

nomeata commented 1 month ago

Hmm, I was just about to fix this, but I noticed that pcre2 isn't, for example, packaged in Debian. So I wonder: is that really the future-proof package for PCRE functionality to use? Are there alternatives to consider?

It seems that text-icu provides regex, and is available both in Debian and Arch. I am a bit hesitant, in case users use regex syntax of features that are very pcre specific.

natrys commented 1 month ago

I noticed that pcre2 isn't, for example, packaged in Debian

It is though? Since Debian 10 it seems: https://packages.debian.org/source/buster/pcre2

nomeata commented 1 month ago

That's the C library, but not the Haskell bindings, isn't it?

natrys commented 1 month ago

Oh I see what you meant. I didn't even know Debian has such granular Haskell packages in general (but I suppose I should have, from the context of this issue about Arch). My distro just uses stack/cabal and calls it a day.