{"id":51465400,"url":"https://github.com/ray-project/ray-haproxy","last_synced_at":"2026-07-06T10:30:38.951Z","repository":{"id":351192643,"uuid":"1209952755","full_name":"ray-project/ray-haproxy","owner":"ray-project","description":"HAProxy for bundling with Ray","archived":false,"fork":false,"pushed_at":"2026-06-29T21:44:36.000Z","size":47,"stargazers_count":1,"open_issues_count":3,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-29T23:22:10.233Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ray-project.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-14T00:23:42.000Z","updated_at":"2026-06-29T21:44:39.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/ray-project/ray-haproxy","commit_stats":null,"previous_names":["ray-project/ray-haproxy"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/ray-project/ray-haproxy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ray-project%2Fray-haproxy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ray-project%2Fray-haproxy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ray-project%2Fray-haproxy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ray-project%2Fray-haproxy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ray-project","download_url":"https://codeload.github.com/ray-project/ray-haproxy/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ray-project%2Fray-haproxy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35187624,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-06T02:00:07.184Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-07-06T10:30:38.158Z","updated_at":"2026-07-06T10:30:38.935Z","avatar_url":"https://github.com/ray-project.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"ray-haproxy\n===========\n\nPre-built `HAProxy \u003chttps://www.haproxy.org/\u003e`_ binary distribution for\n`Ray Serve \u003chttps://docs.ray.io/en/latest/serve/index.html\u003e`_.\n\nThe wheel bundles the HAProxy binary together with its vendored shared\nlibraries (libssl, libcrypto, libpcre, liblua) so that Ray Serve can use\nHAProxy without requiring a system-level installation.\n\nInstallation\n------------\n\n.. code-block:: bash\n\n   pip install \"ray[serve,haproxy]\"\n\nOr directly::\n\n   pip install ray-haproxy\n\nPlatform support\n----------------\n\n* Linux x86_64 (``manylinux_2_17_x86_64``)\n* Linux arm64 (``manylinux_2_17_aarch64``)\n\nUsage\n-----\n\n.. code-block:: python\n\n   from ray_haproxy import get_haproxy_binary\n   print(get_haproxy_binary())  # /path/to/ray_haproxy/bin/haproxy\n\nBinary resolution order:\n\n1. ``RAY_SERVE_HAPROXY_BINARY`` environment variable (explicit override)\n2. Bundled binary inside this package\n3. ``haproxy`` on the system PATH\n\nVendored shared libraries\n-------------------------\n\nThe wheel bundles HAProxy and the shared libraries it depends on that are\nnot guaranteed to exist on all Linux systems. At build time, the script\n``ci/build/build-haproxy-dist.sh`` compiles HAProxy inside a manylinux2014\ncontainer, then uses ``ldd`` to discover every ``.so`` the binary needs.\nLibraries on the `PEP 599 manylinux2014 allowlist\n\u003chttps://peps.python.org/pep-0599/\u003e`_ (libc, libz, libpthread, etc.) are\nskipped — they are guaranteed present on any compatible system. Everything\nelse is copied into ``lib/`` and the binary's RPATH is patched to\n``$ORIGIN/lib`` so it finds its vendored copies at runtime.\n\n.. list-table::\n   :header-rows: 1\n   :widths: 25 15 60\n\n   * - Library\n     - Source\n     - Why\n   * - OpenSSL 3.0.x (libssl, libcrypto)\n     - Built from source\n     - manylinux2014 ships OpenSSL 1.1.1 (EOL Sept 2023). We build 3.0.x\n       (LTS, EOL Sept 2026) to get current security patches.\n   * - Lua 5.4.x\n     - Built from source\n     - HAProxy 2.8 requires Lua 5.3+. manylinux2014 only has Lua 5.1.\n   * - PCRE (libpcre, libpcreposix)\n     - manylinux2014 system package\n     - Discovered by ``ldd``, not on the PEP 599 allowlist. Vendored\n       automatically.\n   * - libxcrypt (libcrypt.so.2)\n     - manylinux2014 system package\n     - Discovered by ``ldd``. ``libcrypt.so.1`` (glibc) is on the\n       allowlist, but ``libcrypt.so.2`` (libxcrypt) is not. Must be\n       vendored — omitting it causes the binary to fail on systems that\n       only have ``libcrypt.so.1``.\n\nLibraries **not** vendored (on the PEP 599 allowlist): libc, libm, libdl,\nlibrt, libpthread, libz, libgcc_s, libresolv, libcrypt.so.1.\n\nLicense\n-------\n\nHAProxy is distributed under the **GNU General Public License v2**.\nSee `LICENSE \u003chttps://github.com/haproxy/haproxy/blob/master/LICENSE\u003e`_\nfor details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fray-project%2Fray-haproxy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fray-project%2Fray-haproxy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fray-project%2Fray-haproxy/lists"}