imtherealnaska opened a new pull request, #51244:
URL: https://github.com/apache/arrow/pull/51244

   ### Rationale for this change
   Updating the **uriparser** version so as to include security fixes.  Rather 
than refreshing vendored copy , this makes uriparser and external dependency. 
   
   ### What changes are included in this PR?
   _AI generated, because there are too many changes and might miss some_
   - `uriparser` added to `ARROW_THIRDPARTY_DEPENDENCIES`, with a
     `build_uriparser()` ExternalProject pinned to 1.0.2 (docs, tests, tools
     and `wchar_t` support disabled; static; `URI_STATIC_BUILD` on the
     interface; registered in `ARROW_BUNDLED_STATIC_LIBS`).
   - `REQUIRED_VERSION "1.0.2"`, so every build gets a uriparser carrying all
     fixes through 1.0.2.
   - New `cmake_modules/FinduriparserAlt.cmake`. Upstream ships a CMake package
     config, but Debian/Ubuntu's `liburiparser-dev` installs only
     `liburiparser.pc`, so the module tries `find_package(CONFIG)` first, then
     pkg-config, then a plain library search.
   - `ARROW_STATIC_INSTALL_INTERFACE_LIBS` gains `uriparser::uriparser` for
     SYSTEM builds, so static consumers link correctly.
   - meson: new `subprojects/uriparser.wrap` (`method = cmake`, same tarball
     and checksum as the CMake pin) plus a `cmake.subproject` fallback, since
     meson has no BUNDLED equivalent.
   - `cpp/src/arrow/vendored/uriparser/` (28 files) and its `LICENSE.txt`
     section removed; `util/uri.cc` now includes `<uriparser/Uri.h>`.
   - Packaging: 6 dockerfiles, conda, Brewfile, both vcpkg manifests, MSYS2
     `PKGBUILD` and `msys2_setup.sh`, `r_windows_build.sh`, the
     `-Duriparser_SOURCE` passthrough in `cpp_build.sh`, and the dependency
     list in `building.rst`.
   
   ***NOTICE*** : Having 1.0.2 as floor means ,nearly every distro has to build 
it from source until they catch up. 
   
   ### Are these changes tested?
   All existing tests pass. 
   
   Verified on Ubuntu 22.04: 
   - With 0.9.6 (Distro bundled)present, it finds that the version is not 
suitable and falls back to building 1.0.2
   - Explicit -Duriparser_SOURCE=SYSTEM with 0.9.6 fails . 
   - Also builds and passes 13/13 on macOS against Homebrew
   
   ### Are there any user-facing changes?
   Now Arrow requires uriparser or builds it . No user facing changes as such 
because no API changes . 
   
   **This PR contains a "Critical Fix".** It has security fixes that has gone 
in uriparser. 
   
   **AI Usage**:
   - Used for testing <-> building loop. 
   
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to