couchbase / couchbase/couchbase-php-client
Build for 32-bits broken
Open
Nobody has claimed this yet.
- Dominant language
- PHP
- Stars
- 7
- Forks
- 13
- Avg merge
- 6d 10m
- Merged PRs (30d)
- 2
Description
Upgrade to 4.4.0 version is blocked for Alpinelinux as x86/armv7/armhf fails (other arches are 64-bits and passing)
See https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/90885/pipelines
Meaningful part of build logs
/builds/alpine/aports/community/php84-pecl-couchbase/src/couchbase-4.4.0/src/deps/couchbase-cxx-client/core/websocket_codec.cxx:448:36: error: right shift count >= width of type [-Werror=shift-count-overflow]
448 | static_cast<std::byte>((length >> 56) & 0xff),
| ~~~~~~~^~~~~
/builds/alpine/aports/community/php84-pecl-couchbase/src/couchbase-4.4.0/src/deps/couchbase-cxx-client/core/websocket_codec.cxx:449:36: error: right shift count >= width of type [-Werror=shift-count-overflow]
449 | static_cast<std::byte>((length >> 48) & 0xff),
| ~~~~~~~^~~~~
/builds/alpine/aports/community/php84-pecl-couchbase/src/couchbase-4.4.0/src/deps/couchbase-cxx-client/core/websocket_codec.cxx:450:36: error: right shift count >= width of type [-Werror=shift-count-overflow]
450 | static_cast<std::byte>((length >> 40) & 0xff),
| ~~~~~~~^~~~~
/builds/alpine/aports/community/php84-pecl-couchbase/src/couchbase-4.4.0/src/deps/couchbase-cxx-client/core/websocket_codec.cxx:451:36: error: right shift count >= width of type [-Werror=shift-count-overflow]
451 | static_cast<std::byte>((length >> 32) & 0xff),
| ~~~~~~~^~~~~
/builds/alpine/aports/community/php84-pecl-couchbase/src/couchbase-4.4.0/src/deps/couchbase-cxx-client/core/websocket_codec.cxx: In function 'couchbase::core::{anonymous}::decode_status couchbase::core::{anonymous}::decode_frame(gsl::span<std::byte>, bool)':
/builds/alpine/aports/community/php84-pecl-couchbase/src/couchbase-4.4.0/src/deps/couchbase-cxx-client/core/websocket_codec.cxx:522:37: error: conversion from 'uint64_t' {aka 'long long unsigned int'} to 'std::size_t' {aka 'unsigned int'} may change value [-Werror=conversion]
522 | payload_length = decode_uint64(data.subspan(2, sizeof(std::uint64_t)));
| ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the referenced Alpine pipeline and inspect src/deps/couchbase-cxx-client/core/websocket_codec.cxx at lines 448-451 and 522, where the 32-bit build errors occur. Use the x86, armv7, and armhf pipeline results to verify completion; done means the PHP 8.4 Couchbase package builds successfully for those architectures.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, php
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100