google / google/brotli-wheels

Brotli v1.1.0 tests fail with pypy3

Open
#19 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
No language data
Stars
11
Forks
12
PR merge metrics
No merged PRs in 30d

Description

I tried to update the submodule to brotli v1.1.0 in https://github.com/google/brotli-wheels/commit/c7db3350aaa7d0b90da6f0ec3bec0568cdad09be (#18), but encountered an issue with pypy. The wheels get built but then when the tests are run, we get these sort of errors:

```
test__test_compress_file_quality_11_lgwin_10_random_org_10k (tests.bro_test.TestBroCompress) ... RPython traceback:
File "pypy_module_cpyext_1.c", line 6714, in wrapper_second_level__star_2_51
File "implement.c", line 26795, in dispatcher_41
Fatal RPython error: AssertionError
```

e.g. see CI log https://github.com/google/brotli-wheels/actions/runs/6085235897/job/16508840821#step:5:944

I don't know how to fix that, so for the time being I will simply disable builting wheels for pypy...
If anybody would like to help fix this, they'll be welcome to send a PR.

Also note that pypy users may benefit from using the alternative CFFI-based bindings from https://github.com/python-hyper/brotlicffi, whose API is mostly a drop-in replacement for our official brotli bindings.

Contributor guide

Open the contributing guide

Research direction

Start with tests.bro_test.TestBroCompress and the linked CI log, then reproduce the failing tests after updating the Brotli submodule to v1.1.0 under PyPy3. Done means the PyPy wheel build and test job pass without the reported RPython AssertionError, allowing PyPy wheels to be enabled again.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system, testing-qa
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.