[cpprestsdk] patch to fix clang error with unique_ptr to incomplete type#51307
[cpprestsdk] patch to fix clang error with unique_ptr to incomplete type#51307nmatteo-scitec wants to merge 1 commit into
Conversation
BillyONeal
left a comment
There was a problem hiding this comment.
vcpkg is not a clearinghouse for unmaintained things to become maintained; if upstream is gone we need to remove it entirely rather than trying to patch around it.
Upstream is not entirely 'gone'; they (Microsoft) claim they will continue to fix critical bugs and address security issues. But I don't think this compilation fix falls into either of those categories. I think this patch is pretty comparable in scope and intent to the ones that are already present in the port. If those other fixes to make sure the package is compatible with various compilers and systems were deemed appropriate it seems to me that this one should be as well. |
5dac36e to
17848ea
Compare
|
The failures compiling on android and windows platforms seem to be caused by the issue microsoft/cpprestsdk#1812 and would not be affected one way or the other by this patch. |
|
@microsoft-github-policy-service agree company="SciTec" |
That means the bar is like "exploited in the wild" type of bug. It doesn't even compile with current asio, for example, which is why all the asio touching stuff is effectively deindexed in vcpkg.
I guess that's fair. Just don't be surprised if we are forced to officially deindex it in a short time (~weeks) |
|
Drafting due to build failures. You may be able to fix by editing scripts/ci.feature.baseline.txt. |
216d538 to
c1cdd9f
Compare
|
There is a bug in the feature baseline handling I ran into in #51750 and fixed in microsoft/vcpkg-tool#2017 |
5889488 to
6b6e84f
Compare
Clang (at least in versions 18, 19, and 20) in C++23 mode using libstdc++ fails to compile cpprestsdk due to issue llvm/llvm-project#111185 involving a unique_ptr to an incomplete type.
Defining the json::value destructor in the .cpp file where the full definition is visible fixes the issue and allows compiling with C++23.
Cpprestsdk upstream is no longer being updated.
./vcpkg x-add-version --alland committing the result.