-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Switch from the unmaintained pcre to pcre2 #2945
Comments
RenderDoc does not depend directly on the pcre library or link against it in its actual binaries, it's only used as a build time dependency for swig for a couple of minor uses. For that reason it's fine if the pcre library is not maintained since it's effectively a fixed target on renderdoc's fork of swig and is already working, so if 8.45 is the final release it can continue to be used. I agree that a new project shouldn't start using a deprecated library, or a project with heavy use of pcre, but this is effectively a minor uncomplicated dependency in RenderDoc's build process. |
What if distributions want to remove (or have removed) pcre? How can one build renderdoc in that case? I understand that this is low priority, yet outright closing the topic seems odd. Hope you'll reconsider, thanks again o/ |
I would hope that distributions do not remove the library, since that would break any projects that aren't going to be updated and especially any binaries that are linked against it. The two libraries are separate packages and separate files so it's not a case where one version can't be present at the same time as the other. If a distribution did do that, someone could download and build the pcre source themselves as it's a comparatively simple project to build. I closed the issue because I do not plan to make this change as I don't see a compelling reason to switch libraries. If it were something that I would do at some point then I would leave the feature request open. |
As a person who knows basically nothing about pcre or it's v2 sibling, I don't see the "download and build it yourself" approach as the most scaleable or palatable. That said, are you open to a MR from third parties (myself or others) to get there? I'm not trying to make any promises here, despite being somewhat tempted to give it a try. |
Honestly I also don't know anything about the library as I don't use it myself, but I would hope and assume that given its nature it has few if any required dependencies so would be easy to build. If it became necessary for someone to manually build it then it could either be included into the repository here or instructions could be given for how to compile it. If that need is widespread then at that point we could consider another solution like changing library. My point is that it is a theoretical discussion as no distro has removed this library - it would be an unfortunate choice if they did rather than simply letting it remain as a fixed legacy/deprecated library. For that reason I don't think I would accept such a PR as it does not currently have a sufficient justification - there is no benefit I can see aside from a future-proofing in principle, and potentially it could introduce bugs or maintenance/compatibility issues (e.g. if there is some distro that doesn't have the new library). Until there is a reason to make that change and pay that cost I don't see a reason to change what works fine. |
So if I understood correctly, you stand firm that switching to pcre2 is unjustified and/or unwarranted until distributions start removing pcre. Even though the pcre team seemingly suggesting otherwise. Rather interestingly, upstream swig has switched to pcre2 over 1 year ago. Perhaps a wiser move is it actually coordinate with swig team to integrate the renderdoc changes and use swig upstream all together? But i digress 😅 Thank you for the time and input. |
It does appear that renderdoc is going to be dropped from Debian (and most likely Ubuntu will follow) due to this: |
renderdoc was removed from debian testing due to the old pcre dependency: https://tracker.debian.org/news/1445223/renderdoc-removed-from-testing/ |
Description
Currently renderdoc is using pcre aka https://www.pcre.org/. That version is no longer maintained and the vast majority of projects have migrated to pcre2. Would be great if renderdoc also gets ported. Thanks
From the website:
This version of PCRE is now at end of life, and is no longer being actively maintained. Version 8.45 is expected to be the final release of the older PCRE library, and new projects should use PCRE2 instead.
Environment
The text was updated successfully, but these errors were encountered: