[picohttpparser] Add new port, devendor from [cinatra]#51743
Conversation
|
AI review: Port Audit Report —
|
|
The
|
|
I asked Copilot to test both libraries linked to a test project:
EDIT: Patched |
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
3f9b27a to
7c70318
Compare
…uard collision - Add picohttpparser port (version-date 2026-04-06) with custom CMakeLists.txt - Patch cinatra vendored picohttpparser.h to use unique include guard (cinatra_picohttpparser_h) to avoid collision with upstream library Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
| @@ -0,0 +1,27 @@ | |||
| From dfdd983a4daed8a12c0283e579d8d2e31a2504fc Mon Sep 17 00:00:00 2001 | |||
There was a problem hiding this comment.
I think we have usually tried to not include this email header part
There was a problem hiding this comment.
This header was auto-generated by git format-patch -o to avoid Copilot doing whatever it does to line endings that corrupt the patch when we use git diff, but maybe it has gotten better about that lately?
| picohttpparser provides CMake targets: | ||
|
|
||
| find_package(unofficial-picohttpparser CONFIG REQUIRED) | ||
| target_link_libraries(main PRIVATE unofficial::picohttpparser::picohttpparser) |
There was a problem hiding this comment.
Considering this thing appears to be header only and we aren't actually using this target in cinatra, should we even add it?
There was a problem hiding this comment.
Is not header-only, the cinatra version was modified to be header-only but the upstream library has a separate .c file.
The usage file could suggest find_path + find_library instead of the unofficial targets.
- Update SHA512 for v2.6.1 release - Add picohttpparser dependency (port merged in microsoft#51743) - Pass -DHICAL_USE_SYSTEM_PICOHTTPPARSER=ON - Remove boost-beast dependency (replaced by native HTTP/WebSocket stack)
dg0yt
left a comment
There was a problem hiding this comment.
So it is not devendored in cinatra?
| if(VCPKG_TARGET_IS_WINDOWS) | ||
| vcpkg_check_linkage(ONLY_STATIC_LIBRARY) | ||
| endif() |
There was a problem hiding this comment.
I was looking for this at the top of the file.
| @@ -0,0 +1,25 @@ | |||
| cmake_minimum_required(VERSION 3.14) | |||
There was a problem hiding this comment.
Why do we add ports with 3.14 while building with 4.3?
Required by #51671, created with the create-port skill in #51187.
Adds a port for https://github.com/h2o/picohttpparser.
The
cinatraport vendors an extensively modified copy ofpicohttpparser.hbut namespaced to avoid conflicts with upstream. Both versions have been tested using a test project and are installable side-by-side.Owner-Projectform.vcpkg.json, or explicitly disabled through patches or build system arguments such as CMAKE_DISABLE_FIND_PACKAGE_Xxx or VCPKG_LOCK_FIND_PACKAGEvcpkg.jsonmatches what upstream says.vcpkg.jsonmatches what upstream says../vcpkg x-add-version --alland committing the result.