Warning by the pytest
pytest ================================================== test session starts =================================================== platform darwin -- Python 3.11.9, pytest-7.4.0, pluggy-1.2.0 rootdir: /Users/ramkumarkoppu/repos/LLQ/craystack plugins: torchtyping-0.1.4, cov-4.1.0, anyio-3.7.1, typeguard-4.1.5 collected 65 items
craystack/codecs_test.py ............................................................. [ 93%] craystack/rans_test.py .... [100%]
==================================================== warnings summary ==================================================== craystack/codecs_test.py::test_multiset_codec /Users/ramkumarkoppu/repos/LLQ/craystack/craystack/rans.py:35: UserWarning: Popping from empty message. Generating random data. warn('Popping from empty message. Generating random data.')
-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html ============================================= 65 passed, 1 warning in 4.09s ============================================== (craystack) Rams-MBP:craystack ramkumarkoppu$
Hi! Thanks for reaching out. This warning is an expected part of the test. It's saying bits were synthesized to decode with ANS, as the stack (ANS state) was empty. This happens at the early stages of multiset encoding and is closely related to the "initial bits" issue of sampling without replacement. You can read more about it here: https://arxiv.org/abs/2107.09202
in the Methods section.